0

私はと呼ばれるパラメーターを期待するコントローラーを持っていますが、controller私が書いたRSpecテストは、をパラメーターとして渡したという事実を好まないようですget

スペック

require 'spec_helper'

describe PageHelpsController do

  describe 'GET :search' do

    it "returns" do
      get :search, { :controller => 'employer', :action => 'edit', :edition => 'usa', :anchor => 'collaborator' }
      response.status.should be_success
      response.should render_template(:partial => 'shared/page_help')
    end
  end

end

エラー

vagrant@debian-squeeze64:/vagrant$ bundle exec rspec spec/controllers/page_helps_controller_spec.rb 
F

Failures:

  1) PageHelpsController GET :search returns
     Failure/Error: Unable to find /vagrant/spec/controllers/page_helps_controller_spec.rb to read failed line
     ActionController::RoutingError:
       No route matches {:controller=>"employer", :action=>"search", :relative_url_root=>nil, :edition=>"usa"}
     # ./spec/controllers/page_helps_controller_spec.rb:11
4

1 に答える 1

1

。という名前のパラメータを作成したと仮定して、この質問を取り上げますcontroller

問題は、と呼ばれるパラメータを作成してRailsを混乱させていることですcontrollerEmployerもちろん存在しないというコントローラーがあることを前提としています。そのため、ルートエラーが発生します。これを解決するには、名前の付いたパラメーターを別の名前に変更する必要がありcontrollerます。

于 2012-12-14T08:06:14.457 に答える