X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/2bcdf9abaa6e6892d4b30241465293e2bd10ceb7..cea6f9c4cfc7dc1bd0dc9aa71f3a39feecb98113:/test/controllers/changeset_controller_test.rb diff --git a/test/controllers/changeset_controller_test.rb b/test/controllers/changeset_controller_test.rb index 50a66744a..3e081a079 100644 --- a/test/controllers/changeset_controller_test.rb +++ b/test/controllers/changeset_controller_test.rb @@ -2,8 +2,6 @@ require "test_helper" require "changeset_controller" class ChangesetControllerTest < ActionController::TestCase - api_fixtures - ## # test all routes which lead to this controller def test_routes @@ -424,6 +422,9 @@ EOF def test_upload_create_valid user = create(:user) changeset = create(:changeset, :user => user) + node = create(:node) + way = create(:way_with_nodes, :nodes_count => 2) + relation = create(:relation) basic_authorization user.email, "test" @@ -436,14 +437,14 @@ EOF - + - - - + + + @@ -870,6 +871,7 @@ EOF ## # upload multiple versions of the same element in the same diff. def test_upload_multiple_valid + node = create(:node) changeset = create(:changeset) basic_authorization changeset.user.email, "test" @@ -879,14 +881,14 @@ EOF diff = < - - - - - - - - + + + + + + + + EOF @@ -907,6 +909,7 @@ EOF # upload multiple versions of the same element in the same diff, but # keep the version numbers the same. def test_upload_multiple_duplicate + node = create(:node) changeset = create(:changeset) basic_authorization changeset.user.email, "test" @@ -914,8 +917,8 @@ EOF diff = < - - + + EOF @@ -1315,6 +1318,8 @@ EOF # when we make some simple changes we get the same changes back from the # diff download. def test_diff_download_simple + node = create(:node) + ## First try with a non-public user, which should get a forbidden basic_authorization(create(:user, :data_public => false).email, "test") @@ -1340,14 +1345,14 @@ EOF diff = < - - - - - - - - + + + + + + + + EOF @@ -1431,6 +1436,9 @@ OSMFILE # when we make some complex changes we get the same changes back from the # diff download. def test_diff_download_complex + node = create(:node) + node2 = create(:node) + way = create(:way) basic_authorization(create(:user).email, "test") # create a temporary changeset @@ -1445,7 +1453,7 @@ OSMFILE diff = < - + @@ -1453,9 +1461,9 @@ OSMFILE - - - + + + @@ -1630,14 +1638,16 @@ EOF user = create(:user) changeset = create(:changeset, :user => user) closed_changeset = create(:changeset, :closed, :user => user, :created_at => Time.utc(2008, 1, 1, 0, 0, 0), :closed_at => Time.utc(2008, 1, 2, 0, 0, 0)) + changeset2 = create(:changeset, :min_lat => 5 * GeoRecord::SCALE, :min_lon => 5 * GeoRecord::SCALE, :max_lat => 15 * GeoRecord::SCALE, :max_lon => 15 * GeoRecord::SCALE) + changeset3 = create(:changeset, :min_lat => 4.5 * GeoRecord::SCALE, :min_lon => 4.5 * GeoRecord::SCALE, :max_lat => 5 * GeoRecord::SCALE, :max_lon => 5 * GeoRecord::SCALE) get :query, :bbox => "-10,-10, 10, 10" assert_response :success, "can't get changesets in bbox" - assert_changesets [1, 4, 6] + assert_changesets [changeset2, changeset3] get :query, :bbox => "4.5,4.5,4.6,4.6" assert_response :success, "can't get changesets in bbox" - assert_changesets [1] + assert_changesets [changeset3] # not found when looking for changesets of non-existing users get :query, :user => User.maximum(:id) + 1 @@ -1655,11 +1665,11 @@ EOF basic_authorization private_user.email, "test" get :query, :user => private_user.id assert_response :success, "can't get changesets by user ID" - assert_changesets [private_user_changeset.id, private_user_closed_changeset.id] + assert_changesets [private_user_changeset, private_user_closed_changeset] get :query, :display_name => private_user.display_name assert_response :success, "can't get changesets by user name" - assert_changesets [private_user_changeset.id, private_user_closed_changeset.id] + assert_changesets [private_user_changeset, private_user_closed_changeset] # check that the correct error is given when we provide both UID and name get :query, :user => private_user.id, :display_name => private_user.display_name @@ -1667,39 +1677,39 @@ EOF get :query, :user => private_user.id, :open => true assert_response :success, "can't get changesets by user and open" - assert_changesets [private_user_changeset.id] + assert_changesets [private_user_changeset] get :query, :time => "2007-12-31" assert_response :success, "can't get changesets by time-since" - assert_changesets [1, 2, 4, 5, 6, private_user_changeset.id, private_user_closed_changeset.id, changeset.id, closed_changeset.id] + assert_changesets [private_user_changeset, private_user_closed_changeset, changeset, closed_changeset, changeset2, changeset3] get :query, :time => "2008-01-01T12:34Z" assert_response :success, "can't get changesets by time-since with hour" - assert_changesets [1, 2, 4, 5, 6, private_user_changeset.id, private_user_closed_changeset.id, changeset.id, closed_changeset.id] + assert_changesets [private_user_changeset, private_user_closed_changeset, changeset, closed_changeset, changeset2, changeset3] get :query, :time => "2007-12-31T23:59Z,2008-01-02T00:01Z" assert_response :success, "can't get changesets by time-range" - assert_changesets [1, 5, 6, closed_changeset.id] + assert_changesets [closed_changeset] get :query, :open => "true" assert_response :success, "can't get changesets by open-ness" - assert_changesets [1, 2, 4, private_user_changeset.id, changeset.id] + assert_changesets [private_user_changeset, changeset, changeset2, changeset3] get :query, :closed => "true" assert_response :success, "can't get changesets by closed-ness" - assert_changesets [3, 5, 6, 7, 8, 9, private_user_closed_changeset.id, closed_changeset.id] + assert_changesets [private_user_closed_changeset, closed_changeset] get :query, :closed => "true", :user => private_user.id assert_response :success, "can't get changesets by closed-ness and user" - assert_changesets [private_user_closed_changeset.id] + assert_changesets [private_user_closed_changeset] get :query, :closed => "true", :user => user.id assert_response :success, "can't get changesets by closed-ness and user" - assert_changesets [closed_changeset.id] + assert_changesets [closed_changeset] get :query, :changesets => "#{private_user_changeset.id},#{changeset.id},#{closed_changeset.id}" assert_response :success, "can't get changesets by id (as comma-separated string)" - assert_changesets [private_user_changeset.id, changeset.id, closed_changeset.id] + assert_changesets [private_user_changeset, changeset, closed_changeset] get :query, :changesets => "" assert_response :bad_request, "should be a bad request since changesets is empty" @@ -2429,10 +2439,10 @@ EOF ## # boilerplate for checking that certain changesets exist in the # output. - def assert_changesets(ids) - assert_select "osm>changeset", ids.size - ids.each do |id| - assert_select "osm>changeset[id='#{id}']", 1 + def assert_changesets(changesets) + assert_select "osm>changeset", changesets.size + changesets.each do |changeset| + assert_select "osm>changeset[id='#{changeset.id}']", 1 end end