Не работает Ruby Rspec - PullRequest
       115

Не работает Ruby Rspec

0 голосов
/ 17 октября 2019

Для приведенного ниже фрагмента кода:

@by_hidden.should_not_receive(:by_limit).with(100).and_return(@by_limit)

Я сталкиваюсь с ошибкой как

@by_hidden.should_not_receive(:by_limit).with(100).and_return(@by_limit)
       (Double Object).by_limit(100)
           expected: 1 time with arguments: (100)
           received: 0 times with arguments: (100)

Любая информация по этому вопросу приветствуется.

1 Ответ

0 голосов
/ 17 октября 2019

Напишите это так:

expect(@by_hidden).not_to receive(:by_limit).with(100)

Или, возможно (в зависимости от вашего варианта использования), даже просто:

expect(@by_hidden).not_to receive(:by_limit)

  1. Это не имеет смыслазаглушить возвращаемое значение, если вы ожидаете, что метод не будет вызван.
  2. Синтаксис expect(...).to был предпочтительнее, чем should / should_not, в течение нескольких лет. Последний подход может быть проблематичным для определенных типов объектов, поэтому его лучше избегать.
...