0
Я пытаюсь сделать двойной тест для экземпляра класса с RSpec. Скажем, у меня есть тест, который принимает объект File только как аргумент.Правильный способ удвоить экземпляр класса с помощью RSpec?
Отлично, теперь, как мне сделать двойной, чтобы мне не нужно было передавать фактический файл со всеми моими спецификациями?
let(:file) { double(File) }
raise "NOT A FILE" unless file.is_a? File
# => RuntimeError: NOT A FILE
Я также попытался это:
let(:file) { instance_double(File) }
raise "NOT A FILE" unless file.is_a? File
# => RuntimeError: NOT A FILE
И это (что ожидает фактического файла):
let(:file) { object_double(File.new) }
# => ArgumentError: wrong number of arguments
Что я делаю неправильно?