2012-12-12 60 views
0

我在我的应用程序测试控制器,而且在我的控制器下面的代码:Rspec的GET不匹配的路由

describe CsdlController do 
    describe "GET /csdl/inclusive" do 
     before do 
      # Create domains that are included 
      @domain = create(:validated_domain) 
     end 
     it "returns a CSDL with valid domains" do 
      get "/csdl/include.json" 
      response.body.should =~ /#{@domain.text}/ 
     end 
    end 
end 

我也有以下途径:

match "/csdl/:type" => 'csdl#show' 

然而当我运行规范它给了我下面的错误:

No route matches {:controller=>"csdl", :action=>"/csdl/include.json"} 

我有我使用RSpec的错误在这里的感觉但不知道如何解决它。有任何想法吗?

我应该补充一点,当我通过浏览器实际调用它时,它似乎能够很好地工作。

回答

1

在控制器的测试,你无法通过路由路径通过调用名操作:

get :show, type: 'include', format: 'json'