Я очень плохо знаком с рельсами и пишу тестовые примеры для своего приложения на рельсах. Предположим, у меня есть такой код -
class EmailController < ApplicationController
def new
render :layout => false
end
def create
begin
process_email = ProcessEmail.new(params)
process_email.perform
rescue EmailHelper::HtmlSanitizerTimeoutError, EmailHelper::NokogiriTimeoutError => e
NewRelic::Agent.notice_error(e, account_id: Account.current.id, subject: params[:subject])
process_email.mark_email_on_timeout
end
render layout: 'email'
end
def update
----
end
Я написал тестовые примеры для создания и обновления. Но как мне написать тестовые случаи, которые будут выполнять спасательную часть ??
This is my db
(class abc < ActiveRecord::Base)
this is my controller class
(class abcsController < ApiApplicationController).
Я написал такой минитест `
def test_raise_exception
params = {"a":"b"}
item = abc.new(params)
raises_exception = -> { raise ArgumentError.new }
item.stub :create, raises_exception do
assert_raises(ArgumentError) { post :create }
end
end`
Это ошибка, которая приходит -
NameError: NameError: неопределенный метод create 'для класса