Начиная с версии 3.3 на rspec-expections
gem выдает предупреждение о пустом повышение_сбоя без параметра
expect { raise StandardError }.to raise_error # results in warning
expect { raise StandardError }.to raise_error(StandardError) # fine
Это дает вам подсказку, что ваш код может завершиться с ошибкой, отличной от теста, предназначенного для проверки.
ПРЕДУПРЕЖДЕНИЕ. Использование средства сопоставления raise_error
без указания конкретной ошибки или сообщения может привести к ложным срабатываниям, поскольку raise_error
будет совпадать, когда Ruby выдаст значения NoMethodError
, NameError
или ArgumentError
, потенциально позволяя пройти ожиданию даже не выполняя метод, который вы собираетесь вызвать. Вместо этого рассмотрите возможность предоставления определенного класса ошибки или сообщения. Это сообщение может быть подавлено установкой: RSpec::Expectations.configuration.warn_about_potential_false_positives = false
.