首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Rails 3.1可安装引擎中测试路由

在Rails 3.1中测试路由,可以使用rake routes命令来查看所有路由,并使用assert_recognizes方法来测试路由。

首先,在test/functional/your_controller_test.rb文件中,可以使用以下代码来测试路由:

代码语言:ruby
复制
test "should route to your_action" do
  assert_recognizes({:controller => "your_controller", :action => "your_action"}, {:path => "your_path", :method => :get})
end

其中,your_controller是控制器的名称,your_action是控制器中的方法名称,your_path是路由的路径。

例如,如果你有一个名为users的控制器,其中有一个名为index的方法,你可以使用以下代码来测试路由:

代码语言:ruby
复制
test "should route to users#index" do
  assert_recognizes({:controller => "users", :action => "index"}, {:path => "/users", :method => :get})
end

这将测试/users路径是否映射到users#index方法。

如果你想测试带参数的路由,可以使用以下代码:

代码语言:ruby
复制
test "should route to your_action with parameter" do
  assert_recognizes({:controller => "your_controller", :action => "your_action", :id => "1"}, {:path => "your_path/1", :method => :get})
end

其中,your_controller是控制器的名称,your_action是控制器中的方法名称,your_path是路由的路径,1是参数的值。

例如,如果你有一个名为users的控制器,其中有一个名为show的方法,你可以使用以下代码来测试路由:

代码语言:ruby
复制
test "should route to users#show with parameter" do
  assert_recognizes({:controller => "users", :action => "show", :id => "1"}, {:path => "/users/1", :method => :get})
end

这将测试/users/1路径是否映射到users#show方法,并且参数为1

最后,在命令行中运行rake test命令来运行测试。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

1时8分

TDSQL安装部署实战

领券