sto usando il seguente trucco (da http://mikbe.tk/2011/02/10/blazingly-fast-tests/) al fine di garantire modelli vengono ricaricati ad ogni RSpec eseguito con Spork:costanti ridefinito con Spork
Spork.each_run do
load "#{Rails.root}/config/routes.rb"
Dir["#{Rails.root}/app/**/*.rb"].each { |f| load f }
# .....
end
Tuttavia esso provoca i seguenti avvisi ogni volta che ho eseguito i miei test:
/myproject/app/models/model.rb:36: warning: already initialized constant CONFIGURABLE
che posso evitare mettendo:
if !defined?(A_CONSTANT)
dopo ogni costante, che non sembra proprio corretta (ma funziona). Qualche suggerimento su come posso farlo funzionare correttamente? (cioè i miei modelli continueranno a ricaricarsi nei test, ma non devo inserire lo if
dopo ogni definizione costante.)
Non sono sicuro esattamente il tuo problema con avvisi, ma ho cercato nel test delle prestazioni anche nelle suite di test RSpec, quindi potresti trovare [questa risposta StackOverflow] (http://stackoverflow.com/a/12215946/567863) di riferimento per il tuo file ** spec_helper.rb **. –
Ho visto che questo si verifica quando dichiari una costante con lo stesso nome, ma all'interno di una specifica piuttosto che del tuo codice di produzione. –