我正在测试将安装在子域中的应用程序,以利用主应用程序创建的cookie。除非两个应用程序都在运行,例如:site.local.com
我正在测试的应用程序无法访问会话控制器,因此我无法通过典型的登录方法在测试中创建cookie。
所以我的问题是,我怎么 - 在水豚 - 假饼干?我尝试过类似的东西:
it "should ... ", type: :request do
sign_in(@user)
...
end
#sign_in definition:
def sign_in(user)
cookies.signed[:auth_token] = user.auth_token
end
问题是怎样的:
Failure/Error: sign_in(@user)
NameError:
undefined local variable or method `cookies' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_2:0x000000090cd998>
答案 0 :(得分:4)
试试这个:
page.driver.browser.set_cookie("auth_token=#{user.auth_token}")