написание minitests для создания и обновления API в рельсах - PullRequest
1 голос
/ 20 апреля 2020

Я очень плохо знаком с рельсами и пишу тестовые примеры для своего приложения на рельсах. Предположим, у меня есть такой код -

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 'для класса

...