2017-01-06 4 views
0

Я хочу поднять Активное исключение ресурсов вручную из RSpec и я пытаюсь сделать что-то вроде this-Как повысить исключение ActiveResource ResourceInvalid?

ActiveResource::ResourceInvalid.new(422, "Error Message") 

Хотя я могу поднять ActiveRecord исключения, но ActiveResource не поднимая.

Я вижу initialize метод ActiveResource ожидает два аргумента.

def initialize(response, message = nil) 
     @response = response 
     @message = message 
end 

Я предполагаю, что проблема заключается в отправке параметра response.

+2

В вашем примере кода вы создаете новый экземпляр 'ActiveResource :: ResourceNotFound', но вы на самом деле не' 'рейз' '(http://ruby-doc.org/core-2.4.0/Kernel .html # method-i-raise). Пожалуйста, покажите свой полный пример RSpec, включая текущий вывод (или сообщение об ошибке) и ожидаемый результат. – Stefan

ответ

0

Я хотел бы попробовать что-то вроде этого:

expect { 
    raise ActiveResource::ResourceNotFound.new(404, 'Error Message') 
}.to raise_error(ActiveResource::ResourceNotFound, 404, 'Error Message') 

Обратите внимание на raise и фигурные скобки.

Смежные вопросы