Possiedo un'applicazione Rails 3.1 che è stata creata come API RESTful. Il piano è di gestire l'autenticazione basata su una chiave API che viene passata su ogni richiesta tramite l'intestazione HTTP di autorizzazione. Per testare questa in RSpec, ho voluto impostare l'attributo request.env["HTTP_AUTHORIZATION"]
nel blocco config.before
:RSpec.configure e l'oggetto richiesta
RSpec.configure do |config|
config.mock_with :rspec
config.use_transactional_fixtures = true
config.before(:each) do
# Set API key in Authorization header
request.env["HTTP_AUTHORIZATION"] = "6db13cc8-815f-42ce-aa9e-446556fe3d72"
end
end
Purtroppo, questo genera un'eccezione perché l'oggetto request
non esiste nel blocco config.before
.
C'è un altro approccio per impostare questa intestazione al di fuori di includere nel blocco before
di ciascun file di test del controller?