Trong mô-đun helper tôi, tôi có:Rspec: cách yêu cầu spec.env trong thông số trợ giúp?
def abc(url)
...
if request.env['HTTP_USER_AGENT']
do something
end
end
Trong file spec của tôi, tôi có:
describe "#abc" do
before(:each) do
@meth = :abc
helper.request.env['HTTP_USER_AGENT'] = "..."
end
it "should return the webstart jnlp file" do
@obj.send(@meth, "some_url").should ....
end
end
Khi tôi chạy spec Tôi có lỗi này:
undefined local variable or method `request' for <ObjectWithDocHelperMixedIn:0x00000103b5a7d0>
thế nào thế nào để tôi stub cho request.env ['...'] trong thông số kỹ thuật của tôi?
Cảm ơn.
Tôi làm điều này trong thông số kỹ thuật điều khiển mặc dù ... không bao giờ cố gắng trong thông số kỹ thuật helper. – apneadiving
cảm ơn câu trả lời của bạn. Vâng, tôi đã thử điều đó trước đó nhưng nó không hoạt động trong các thông số kỹ thuật trợ giúp (ít nhất là trong trường hợp của tôi). – RoundOutTooSoon
một cách dễ dàng là giải nén điều kiện cho các phương thức trong trình trợ giúp của bạn và đưa ra các phương thức đó – apneadiving