Я пытаюсь установить cookie в моих интеграционных тестах, например:
cookies.signed[:test] = 1
Это не с:
NoMethodError: undefined method 'signed' for #<Rack::Test::CookieJar>
Насколько я могу судить, это связано с тем, что единственный тип cookiejar, который поддерживает «подпись», это ActionDispatch :: Cookies :: CookieJar.
Я пробовал обходной путь , изложенный здесь , но затем я получаю:
NoMethodError: undefined method 'env' for nil:NilClass
Некоторое погружение в источник рельсов показало мне, что это связано с тем, что я передаю нулевой объект 'request'.
Оказывается, запрос равен нулю, независимо от того, как я пытаюсь его получить - @request равен нулю, self.request равен нулю, open_session.request равен нулю - нет способа получить объект запроса, отличный от нуля.
Если я пытаюсь создать свой собственный объект запроса, я получаю ошибку, упомянутую этим человеком , но ни одно из опубликованных там решений не работает для меня.
Как вы, наверное, догадались, я все утро бился головой о стену, пытаясь выяснить, что я пропустил. Есть ли способ установить этот подписанный файл cookie?