在http标头

时间:2016-01-24 15:45:30

标签: ruby-on-rails ruby testing integration-testing nokogiri

我正在使用MiniTest,并且在集成测试中有以下行:

assert_select response.header['Content-Type'], "application/json"
然而,它回应:

  

DEPRECATION WARNING:由于css选择器无效,因此未运行断言   意外的';'在'[#Nokogiri :: CSS :: Node:0x000000064b2e58 @ type =:CHILD_SELECTOR,@ value = [#Nokogiri :: CSS :: Node:0x000000064b3268 @ type =:ELEMENT_NAME,@ value = [“application”]>之后, #Nokogiri :: CSS :: Node:0x000000064b2ef8 @ type =:ELEMENT_NAME,@ value = [“json”]>]>]'(从课程中的块调用:SessionsTest> at(byebug):1)

是否有人了解这会导致什么以及如何(或者)测试标题?

1 个答案:

答案 0 :(得分:1)

assert_select用于检查DOM对象中的期望,通常是视图结果。

在您的案例中您应该使用的是assert_equal。另请注意,在assert_equal中,期望是第一个参数。

assert_equal "application/json", response.header['Content-Type']