]> git.openstreetmap.org Git - rails.git/blobdiff - test/factories/traces.rb
Switch traces to use ActiveStorage
[rails.git] / test / factories / traces.rb
index 66f810468e20a1c81c8113bf1c92fa454c490044..687339e7f49a5ae1ce9212ba626b94ea51b78979 100644 (file)
@@ -1,30 +1,30 @@
-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 }
+    inserted { true }
+    size { 10 }
 
     trait :deleted do
-      visible false
+      visible { false }
     end
 
     transient do
-      fixture nil
+      fixture { nil }
     end
 
-    after(:create) do |trace, evaluator|
+    after(:build) do |user, evaluator|
       if evaluator.fixture
-        File.symlink(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}.gpx"),
-                     Rails.root.join("test", "gpx", "traces", "#{trace.id}.gpx"))
-        File.symlink(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}.gif"),
-                     Rails.root.join("test", "gpx", "images", "#{trace.id}.gif"))
-        File.symlink(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}_icon.gif"),
-                     Rails.root.join("test", "gpx", "images", "#{trace.id}_icon.gif"))
+        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