1

如果我有一个不应该为某些 Javascript 请求呈现任何内容的操作,我该如何测试它是做什么的?

也就是说,如果动作是:

def some_action
  respond_to do |format|
    format.js { render :nothing => true if some_condition }
  end
end

...我如何编写功能测试来验证它确实没有渲染任何内容?

编辑:assert /\A\s*\z/.match(@response.body)断言正文仅包含空格,这是测试正确的事情吗?

4

2 回答 2

0
assert_nil @response

应该工作,虽然你可能需要做

assert_same @response, ""

反而。

于 2012-08-12T02:11:41.870 回答
0

assert /\A\s*\z/.match(@response.body)断言 body 仅包含空格,这似乎是解决此问题的最简单方法。更具体的测试会遇到问题,因为它显然会将一些奇怪的空白字符放入正文中。

于 2012-09-07T18:01:23.263 回答