我在我的REST Api应用程序中启动单元测试实现。 我使用versionist gem。Rails单元测试功能和下划线模块
所以,我有一个名为像这样的类:Api::V0_1_0::TestController
class Api::V0_1_0::TestController < Api::V0_1_0::BaseController
def test
respond_with({
:message => "done"
})
end
end
routes.rb
(不包括所有路线,但只是必要的):
MyApp::Application.routes.draw do
# -----------------------------------------------------------------------------------------------------------------------------------------
# ApiVersions
#
scope :module => "api",
:defaults => {:format => "json"} do
# ---------------------------------------------------------------------------------------------------
# V0.1.0
# Default version
#
api_version :module => "V0__1__0",
:header => "X-Version", :value => "0.1.0" do
# Test controller
get "/test" => "test#test"
end
# ---------------------------------------------------------------------------------------------------
# ---------------------------------------------------------------------------------------------------
# V0.1.1
# Default version
#
api_version :module => "V0__1__1",
:header => "X-Version", :value => "0.1.1" do
# Test Controller
get "/test" => "test#test"
end
# -----------------------------------------------------------------------------------------------------------------------------------------
# -----------------------------------------------------------------------------------------------------------------------------------------
# ActiveAdmin routes
#
ActiveAdmin.routes(self)
devise_for :admin_users, ActiveAdmin::Devise.config
# -----------------------------------------------------------------------------------------------------------------------------------------
end
功能测试文件:
class Api::V0_1_0::TestControllerTest < ActionController::TestCase
test "should get test" do
get :test
assert_response :success
end
end
当我启动rake test:functionals
。 我有这样的错误:
没有路由匹配{:控制器=> “API/v0_1_0 /测试”:动作=> “测试”}
当我启动rake routes
,我有:
test GET /test(.:format) {:format=>"json", :controller=>"api/V0__1__0/test", :action=>"test"}
随着V0__1__0
而不是V0_1_0
双下划线。
我不知道如何解决这个问题。编辑:我添加routes.rb
。
注:我也张贴在这里的一个问题:https://github.com/bploetz/versionist/issues/9
你能发布你的routes.rb吗? – Domness 2012-04-24 13:34:12
我已经编辑我的文章 – 2012-04-24 13:39:56