У меня есть следующий макет в mock.rb
class Mock
def self.mock_data
{
test: [
{id: 'abc'},
{startDate: '2018-01-01'},
{endDate: '2018-01-01'},
{productIds: [ { id: 1 }, { id: 2} ]}
]
}
end
end
Этот макет из другого сервиса.
Model.rb
class Model
include ActiveModel::Model
attr_accessor :id, :startDate, :endDate, :productIds
def self.find
get_mock = Mock.mock_data.to_json
final_mock = JSON.parse(get_mock, object_class: OpenStruct)
Model.new (
...loop over the hash and build new instance of class....
)
end
Я написал пару rspec'sдля него.
model_spec.rb
expect { Mock.mock_data }.to_not raise_error
allow(Mock).to receive(:mock_data).and_return(HASH)
<- создал фиктивный HASH в rspec </p>
expect { Model.find }.to_not raise_error
Как мне написать контрольные примеры для модели.rb?
Спасибо