Так что я довольно новичок в RSpec и Rails, и я стараюсь изучать RSpec как можно больше, и я действительно изо всех сил пытаюсь реализовать покрытие для методов, которые содержат логику в них.
Приложение, с которым я практикуюсь, использует процент покрытия, чтобы убедиться, что я правильно покрываю код, который я реализую, и мне не хватает покрытия по следующему методу:
def initialize_business
businesses.each do |business|
if business.type == 'Restaurant'
@business_type = Business::Restaurant.new(json_directory: 'restaurant.json')
elsif business.type = 'Bar'
@business_type = Business::Bar.new(json_directory: 'bar.json')
else
@business_type = Business::Other.new(json_directory: 'other_business.json')
end
end
business_type = @business_type
initialize_business_creator(business_type)
end
Моя первоначальная попытка предоставить покрытие (исключив другие несвязанные спецификации), но я изо всех сил пытался даже реализовать какое-либо покрытие, так как я слишком новичок в RSpec:
describe '#initialize_business' do
subject do
described_class.new([business], business_sample_file).
initialize_business_creator
end
it 'assigns a value to @business_type' do
expect(assigns(@business_type)).to_not be_nil
end
end
end
Я просто ищу помощь и / или руководство о том, как реализовать спецификации для такого метода, и я ценю любую помощь. Спасибо!