AのRails 3アプリケーションは、(私は変更することはできません)、次のコードを呼び出し、いくつかのロジックが含まれていますRSpecのテスト内Rails.application.routes.recognize_pathを呼び出すと、レール3に任意の経路と一致していません
Rails.application.routes.recognize_path("/customers", :method => :get)
"/ customers"はもちろん可変です。
私は関連するRspecテストを書いています。これはロジックを含むコードを呼び出し、テストは完全なRails環境を持っています。
Rails.application.routes.routes.inspect
それが適切なルートが含まれている(例えば、それが持っているルートの1つは、「/顧客をGET」):私は、次上げるとき。私は、テストを実行すると
、内の論理結果:同じエラーで
@routes = Rails.application.routes
assert_recognizes({:controller => "customers", :action => "index"}, "/customers")
結果:
No route matches "/customers"
は、次の操作を行います。
ヘルパーテスト、次の中:私はRailsのことを100%確実に確信してもう一度、同じエラー(Noルートマッチ "/顧客")
、中
# this succeeds and returns "/customers"
x = helper.customers_path
Rails.application.routes.recognize_path(x, :method => :get)
結果.application.routesには適切なルートが含まれています。
これの原因は何ですか?
ありがとうございます!