У меня есть метод адреса, который создает новый класс и возвращает некоторую информацию.Тестирование метода с помощью метода should_receive с помощью rspec
class Office
attribute :id
def address
info = Services::Employee.new
info.contact = [contact]
info.id = id
info
end
end
В настоящее время в приведенном выше адреса метода контакта (один внутри массива) еще один метод, который возвращает кучу вещей.
Теперь в моем тесте rspec я просто хочу сказать, что info.contact возвращает [контакт] без фактического тестирования его данными. Я читал о should_receive, но я не уверен, как протестировать вышеописанный метод, используя should_receive.
Вот что я пробовал:
info = Employee.deserialize(JSON.parse(info.to_json))
it 'returns info' do
Employee.should_receive(:info.contact).and_return('[contact]')
expect(helper.address).to eq(info)
end
Я получил эту ошибку:
expected: 1 time with any arguments
received: 0 times with any arguments
'contact' вызывается как метод экземпляра, но вы предлагаете установки ожидание на метод класса , –
Мой плохой - исправил его сейчас. – Jon