]> git.openstreetmap.org Git - rails.git/blob - test/factories/way.rb
Merge pull request #5932 from tomhughes/frozen-strings
[rails.git] / test / factories / way.rb
1 # frozen_string_literal: true
2
3 FactoryBot.define do
4   factory :way do
5     timestamp { Time.now.utc }
6     visible { true }
7     version { 1 }
8
9     changeset
10
11     trait :deleted do
12       visible { false }
13     end
14
15     trait :with_history do
16       after(:create) do |way, _evaluator|
17         (1..way.version).each do |n|
18           create(:old_way, :way_id => way.id, :version => n, :changeset => way.changeset)
19         end
20
21         # For deleted ways, make sure the most recent old_way is also deleted.
22         if way.visible == false
23           latest = way.old_ways.find_by(:version => way.version)
24           latest.visible = false
25           latest.save
26         end
27       end
28     end
29
30     factory :way_with_nodes do
31       transient do
32         nodes_count { 1 }
33       end
34
35       after(:create) do |way, evaluator|
36         (1..evaluator.nodes_count).each do |n|
37           create(:way_node, :way => way, :sequence_id => n)
38         end
39       end
40     end
41   end
42 end