Ich habe Fabriken, die einige Setup-Daten enthalten. Beispiel:Ich kann nicht auf Seeds in meinen Fabriken zugreifen, wenn ich Rails-Unit-Tests ausführe
Factory.define :event do |event|
event.name { Factory.next(:email) }
event.blurb "Test event blurb"
event.association(:owner, :factory => :user)
event.countries Country.all
end
Country.all weist diesem Ereignis nur alle Länder aus einer Nachschlagetabelle zu. Ich schließe alle Länder durch Samen Laden, bevor ich meine Tests mit dieser Linie in meinem Test Helfer laufen:
require "#{Rails.root}/db/seeds.rb"
Dies funktioniert gut, wenn einzelne Unit-Tests ausgeführt werden:
ruby test/unit/event_test.rb
jedoch Country.all gibt nichts zurück Wenn ich den Test unter Verwendung von:
rake test:units
Wer weiß, warum das passiert?
getan werden mußte auch zur Kenntnis, ich soll dass es notwendig war Attribute zu setzen, die auf die Datenbank in einem Block zugreifen. event.countries Country.all wird event.countries {Country.all} – Tony