-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