没有控制器的Rails路由

时间:2014-03-11 20:54:34

标签: ruby-on-rails testing minitest

在我的路线文件中,我有这个没有控制器的随机路线

match "/ping" => lambda{ |env| [200, {'Content-Type' => 'text/plain'}, ['ACK']] }

使用Test :: Unit / MiniTest,我将如何进行测试,即路由/ ping返回'确认'

2 个答案:

答案 0 :(得分:1)

当您创建没有控制器的路线时,您无法使用ActionController::TestCase进行测试。相反,您应该使用ActionDispatch::IntegrationTest。在test/integration/ping_test.rb创建一个包含以下内容的文件:

require "test_helper"

class PingTest < ActionDispatch::IntegrationTest
  def test_ping
    get "/ping"
    assert_response :success
    assert_equal "ACK", response.body
  end
end

答案 1 :(得分:0)