X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/9ca382605c3dd9e102a1a78596a59a12dccbc8c8..e509850554db7b46d2397cb8b8818bd7138b5f5d:/test/functional/relation_controller_test.rb diff --git a/test/functional/relation_controller_test.rb b/test/functional/relation_controller_test.rb index 994235399..dc7c64de2 100644 --- a/test/functional/relation_controller_test.rb +++ b/test/functional/relation_controller_test.rb @@ -269,6 +269,7 @@ class RelationControllerTest < ActionController::TestCase # happen to the correct tables and the API gives sensible results. # this is to test a case that gregory marler noticed and posted to # josm-dev. + ## FIXME Move this to an integration test def test_update_relation_tags basic_authorization "test@example.com", "test" rel_id = current_relations(:multi_tag_relation).id @@ -299,7 +300,7 @@ class RelationControllerTest < ActionController::TestCase # and the API gives sensible results. this is to test a case that # gregory marler noticed and posted to josm-dev. def test_update_relation_tags_via_upload - basic_authorization "test@example.com", "test" + basic_authorization users(:public_user).email, "test" rel_id = current_relations(:multi_tag_relation).id cs_id = changesets(:public_user_first_change).id @@ -327,10 +328,10 @@ class RelationControllerTest < ActionController::TestCase # ------------------------------------- def test_create_invalid - basic_authorization "test@openstreetmap.org", "test" + basic_authorization users(:public_user).email, "test" # put the relation in a dummy fixture changset - changeset_id = changesets(:normal_user_first_change).id + changeset_id = changesets(:public_user_first_change).id # create a relation with non-existing node as member content "" + @@ -346,10 +347,10 @@ class RelationControllerTest < ActionController::TestCase # Test creating a relation, with some invalid XML # ------------------------------------- def test_create_invalid_xml - basic_authorization "test@openstreetmap.org", "test" + basic_authorization users(:public_user).email, "test" # put the relation in a dummy fixture changeset that works - changeset_id = changesets(:normal_user_first_change).id + changeset_id = changesets(:public_user_first_change).id # create some xml that should return an error content "" + @@ -368,11 +369,12 @@ class RelationControllerTest < ActionController::TestCase # ------------------------------------- def test_delete - # first try to delete relation without auth + ## First try to delete relation without auth delete :delete, :id => current_relations(:visible_relation).id assert_response :unauthorized - ## First try with the private user, to make sure that you get a forbidden + + ## Then try with the private user, to make sure that you get a forbidden basic_authorization(users(:normal_user).email, "test") # this shouldn't work, as we should need the payload... @@ -422,7 +424,7 @@ class RelationControllerTest < ActionController::TestCase - # now set auth for the private user + ## now set auth for the public user basic_authorization(users(:public_user).email, "test"); # this shouldn't work, as we should need the payload... @@ -478,6 +480,11 @@ class RelationControllerTest < ActionController::TestCase content(relations(:invisible_relation).to_xml) delete :delete, :id => current_relations(:invisible_relation).id assert_response :gone + + # Public visible relation needs to be deleted + content(relations(:public_visible_relation).to_xml) + delete :delete, :id => current_relations(:public_visible_relation).id + assert_response :success # this works now because the relation which was using this one # has been deleted.