我有一个Rails 4.2应用程序....我正在添加content compression via this thoughtbot blog post,但是我收到一个错误,例如:
undefined method `get' for #<RSpec::ExampleGroups::Compression:0x00000009aa4cc8>
仔细研究水豚文档,似乎你不应该使用get。知道如何在Rails 4中测试下面的内容吗?
# spec/integration/compression_spec.rb
require 'spec_helper'
feature 'Compression' do
scenario "a visitor has a browser that supports compression" do
['deflate','gzip', 'deflate,gzip','gzip,deflate'].each do|compression_method|
get root_path, {}, {'HTTP_ACCEPT_ENCODING' => compression_method }
response.headers['Content-Encoding'].should be
end
end
scenario "a visitor's browser does not support compression" do
get root_path
response.headers['Content-Encoding'].should_not be
end
end
答案 0 :(得分:1)
在水豚测试中,您会使用visit
而非get
(as described here),但该答案实际上对您没有帮助,因为您上面所写的测试不是集成测试,这是一个控制器测试。
将其移至spec/controllers
并使用特定于控制器的帮助程序describe / context / it等为您的控制器构建测试。您可以设置标题并执行您正在显示的代码中执行的各种检查。