- ##
- # test that the changeset :include method works as it should
- def test_changeset_include
- basic_authorization create(:user).display_name, "test"
-
- # create a new changeset
- put :create, :body => "<osm><changeset/></osm>"
- assert_response :success, "Creating of changeset failed."
- changeset_id = @response.body.to_i
-
- # NOTE: the include method doesn't over-expand, like inserting
- # a real method does. this is because we expect the client to
- # know what it is doing!
- check_after_include(changeset_id, 1, 1, [1, 1, 1, 1])
- check_after_include(changeset_id, 3, 3, [1, 1, 3, 3])
- check_after_include(changeset_id, 4, 2, [1, 1, 4, 3])
- check_after_include(changeset_id, 2, 2, [1, 1, 4, 3])
- check_after_include(changeset_id, -1, -1, [-1, -1, 4, 3])
- check_after_include(changeset_id, -2, 5, [-2, -1, 4, 5])
- end
-
- ##
- # test that a not found, wrong method with the expand bbox works as expected
- def test_changeset_expand_bbox_error
- basic_authorization create(:user).display_name, "test"
-
- # create a new changeset
- xml = "<osm><changeset/></osm>"
- put :create, :body => xml
- assert_response :success, "Creating of changeset failed."
- changeset_id = @response.body.to_i
-
- lon = 58.2
- lat = -0.45
-
- # Try and put
- xml = "<osm><node lon='#{lon}' lat='#{lat}'/></osm>"
- put :expand_bbox, :params => { :id => changeset_id }, :body => xml
- assert_response :method_not_allowed, "shouldn't be able to put a bbox expand"
-
- # Try to get the update
- xml = "<osm><node lon='#{lon}' lat='#{lat}'/></osm>"
- get :expand_bbox, :params => { :id => changeset_id }, :body => xml
- assert_response :method_not_allowed, "shouldn't be able to get a bbox expand"
-
- # Try to use a hopefully missing changeset
- xml = "<osm><node lon='#{lon}' lat='#{lat}'/></osm>"
- post :expand_bbox, :params => { :id => changeset_id + 13245 }, :body => xml
- assert_response :not_found, "shouldn't be able to do a bbox expand on a nonexistant changeset"
- end
-