Проверьте, был ли вызван метод из другого класса в Rspec - PullRequest
0 голосов
/ 07 апреля 2020

У меня есть класс, называемый сервисами для животных, который вызывает методы другого класса. Как мне проверить, был ли вызван метод send_food из класса AnimalService в rspe c?

AnimalService Class

  def add_food(food_type)
    FoodNotifier.instance.send_food(food_type)
  end

AnimalServiceSpe c

describe "#add_food" do
  before(:each) do
    allow_any_instance_of(AnimalService).to receive(:additional_food) { 
  300 }
  end

  context "has food" do
    let(:notifier) { instance_double(FoodNotifier.instance) }

    it "sends the treat" do
      service = AnimalService.new
      expect(notifier).to receive(:send_food)
    end
  end

Когда я вызываю следующее, я получаю: Module or String expected при попытке создать экземпляр моего уведомителя

...