#環境
macOS High Sierra 10.13.6
Docker Version: 18.09.2
rails 5.2.1
#問題
RspecのController Specでcookiesの値を指定して処理をしたい。
#解決法
cookies.signed[:key] = 'value' として、その後リクエストを送ります。
_spec.rb
describe "#index" do
let(:guest_token) { 'abcde' }
let!(:order) do
create(
:order_with_line_items,
guest_token: guest_token
)
end
before do
cookies.signed[:guest_token] = guest_token
get :index
end
it "assigns the guest's current order to @order" do
expect(assigns(:order)).to eq order
end
end
これでうまくいきました!