Установить куки для проверки помощника

Я пытаюсь проверить свою вспомогательную функцию, которая возвращает строку, заданную в файле cookie. Тест выглядит так:

context 'if the cookie does exist' do
  it 'returns filled hash' do
    request.cookies['history'] = '{\"1_2_2\":\"HAI\"}'
    expect(history_terms_array).to eq('{\"1_2_2\":\"HAI\"}')
  end
end

Однако по какой-то причине я продолжаю получать следующую ошибку:

 Failure/Error: request.cookies['history'] = 'abc'
 NoMethodError:
   undefined method `cookies' for nil:NilClass

я что-то забыл?

1 ответ

Я не уверен, что объект запроса вообще доступен, вместо этого попробуйте использовать заглушку

allow(request).to receive(:[]).with('history').and_return('{\"1_2_2\":\"HAI\"}')
expect(history_terms_array).to eq('{\"1_2_2\":\"HAI\"}')
Другие вопросы по тегам