X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/88f32e3b45596cd695f4cf78c78ea115ee0d16bc..cb87f02642d0097ebc067ca1f9371dde274a41e3:/test/factories/way.rb diff --git a/test/factories/way.rb b/test/factories/way.rb index f5d9ab071..68826e919 100644 --- a/test/factories/way.rb +++ b/test/factories/way.rb @@ -1,9 +1,40 @@ -FactoryGirl.define do +FactoryBot.define do factory :way do timestamp Time.now visible true version 1 changeset + + trait :deleted do + visible false + end + + trait :with_history do + after(:create) do |way, _evaluator| + (1..way.version).each do |n| + create(:old_way, :way_id => way.id, :version => n, :changeset => way.changeset) + end + + # For deleted ways, make sure the most recent old_way is also deleted. + if way.visible == false + latest = way.old_ways.find_by(:version => way.version) + latest.visible = false + latest.save + end + end + end + + factory :way_with_nodes do + transient do + nodes_count 1 + end + + after(:create) do |way, evaluator| + (1..evaluator.nodes_count).each do |n| + create(:way_node, :way => way, :sequence_id => n) + end + end + end end end