我正在尝试解析Test :: Unit中的HTTP请求标头,但无济于事。我正在为这样的控制器编写功能测试:
test "create a shopify order" do
get :order, PARAMS, {HEADER1 => VAL, HEADER2 => VAL}
assert_response :success # Make sure this returns 200, first off
...
end
通常情况下,我会读取request.headers[HEADER1]
之类的标题,但这会在Test :: Unit中返回nil
。 request
未定义。
如何实际获取我在上述请求中设置的标头的值?我如何将它们分配给request
?我的应用程序来自webservices,我需要测试标头中传递的值,所以我不想更改我的应用程序代码。我只需要在Test :: Unit中模拟那些请求。
谢谢!
答案 0 :(得分:1)
知道你正在使用什么样的测试肯定有帮助(感谢Jesse)。我发现我一直在查看集成测试的文档,而不是功能测试,并且设置头在功能测试中的工作方式不同:
http://twobitlabs.com/2010/09/setting-request-headers-in-rails-functional-tests/
所以我没有设置我认为的标题。他们被读得很好 - 只是没有设定。