]> git.openstreetmap.org Git - rails.git/blobdiff - test/factories/traces.rb
Set updated_by when resolving issues
[rails.git] / test / factories / traces.rb
index 3f409b3675789144da8e291b24da4a00d3915d60..961d52988fc0595c841e9464e9f4028b23447ef6 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 }
+    inserted { true }
+    size { 10 }
 
     trait :deleted do
-      visible false
+      visible { false }
+    end
+
+    transient do
+      fixture { nil }
+    end
+
+    after(:create) do |trace, evaluator|
+      if evaluator.fixture
+        FileUtils.copy(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}.gpx"),
+                       File.join(Settings.gpx_trace_dir, "#{trace.id}.gpx"))
+        FileUtils.copy(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}.gif"),
+                       File.join(Settings.gpx_image_dir, "#{trace.id}.gif"))
+        FileUtils.copy(Rails.root.join("test", "gpx", "fixtures", "#{evaluator.fixture}_icon.gif"),
+                       File.join(Settings.gpx_image_dir, "#{trace.id}_icon.gif"))
+      end
     end
   end
 end