Quando si costruisce la seguente fabbrica:Utilizzo di apparecchi con factory_girl
Factory.define :user do |f|
f.sequence(:name) { |n| "foo#{n}" }
f.resume_type_id { ResumeType.first.id }
end
ResumeType.first
restituisce nil e ottengo un errore.
ResumeType
I record vengono caricati tramite fixture. Ho controllato usando la console e le voci ci sono, la tabella non è vuota.
Ho trovato un esempio simile nella mailing list factory_girl e dovrebbe funzionare.
Cosa mi manca? Devo in qualche modo dire a factory_girl di configurare i dispositivi prima di eseguire i test?
Questo è quello che sembra il mio test_helper come:
ENV["RAILS_ENV"] = "test"
require File.expand_path(File.dirname(__FILE__) + "/../config/environment")
require 'test_help'
class ActiveSupport::TestCase
self.use_transactional_fixtures = true
self.use_instantiated_fixtures = false
fixtures :all
end
Perché utilizzare una miscela di fabbriche e infissi? Le fabbriche sostituiscono i dispositivi. –
Come è il tuo test_helper.rb? –
Uso le fixture per dati fissi che non verranno modificati da nessuno dopo la sua inizializzazione. – deb