0

410 ステータス コード ハンドラが機能していることを確認するために、正しい rspec テストを作成しようとしています。ルート キャッチオールは次のようになります。

match '*not_found', to: 'error#error_404', via: :all

私の単純なエラーコントローラー:

class ErrorController < ApplicationController

  def error_404
    head status: 410
  end

end

私の現在のrspec:

require 'spec_helper'

describe ErrorController do

  context "Method #error_404 handling missing routes =>" do
    it "Should have the 410 status code.." do
      get :error_404
      expect(response.status).to be(410)
    end
  end

end

Rspec エラー メッセージ:

  1) ErrorController Method #error_404 handling missing routes => Should have the 410 status code..
     Failure/Error: get :error_404
     ActionController::UrlGenerationError:
       No route matches {:action=>"error_404", :controller=>"error"}
     # ./spec/controllers/error_controller_spec.rb:7:in `block (3 levels) in <top (required)>'

このテストに合格する方法についてのアイデアはありますか? ルートが存在しないことはわかっていますが、それを機能させるために使用しようとすると問題が発生しgetます...

4

1 に答える 1