]> git.openstreetmap.org Git - rails.git/blobdiff - test/factories/traces.rb
Add closed_by attribute to :closed note factory trait
[rails.git] / test / factories / traces.rb
index 3f409b3675789144da8e291b24da4a00d3915d60..88c57745b1db17e41e00a738b126f5b375402efd 100644 (file)
@@ -1,16 +1,31 @@
-FactoryGirl.define do
+FactoryBot.define do
   factory :trace do
     sequence(:name) { |n| "Trace #{n}.gpx" }
     sequence(:description) { |n| "This is trace #{n}" }
 
-    # Fixme requires User Factory
-    user_id 1
+    user
 
-    timestamp Time.now
-    inserted true
+    timestamp { Time.now.utc }
+    inserted { true }
+    size { 10 }
 
     trait :deleted do
-      visible false
+      visible { false }
+    end
+
+    transient do
+      fixture { nil }
+    end
+
+    after(:build) do |user, evaluator|
+      if evaluator.fixture
+        user.file.attach(Rack::Test::UploadedFile.new(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}.gpx")))
+
+        if evaluator.inserted
+          user.image.attach(Rack::Test::UploadedFile.new(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}.gif")))
+          user.icon.attach(Rack::Test::UploadedFile.new(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}_icon.gif")))
+        end
+      end
     end
   end
 end