Implement API endpoint to query permissions.

This commit is contained in:
Enno Brehm 2012-04-26 17:26:26 +02:00 committed by Tom Hughes
parent 7b613f0920
commit 6a09f49e71
4 changed files with 64 additions and 0 deletions

View file

@ -298,4 +298,41 @@ class ApiControllerTest < ActionController::TestCase
end
end
end
def test_permissions_anonymous
get :permissions
assert_response :success
assert_select "osm > permissions", :count => 1 do
assert_select "permission", :count => 0
end
end
def test_permissions_basic_auth
basic_authorization(users(:normal_user).email, "test")
get :permissions
assert_response :success
assert_select "osm > permissions", :count => 1 do
assert_select "permission", :count => ClientApplication.all_permissions.size
ClientApplication.all_permissions.each do |p|
assert_select "permission[name=#{p}]", :count => 1
end
end
end
def test_permissions_oauth
@request.env["oauth.token"] = AccessToken.new do |token|
# Just to test a few
token.allow_read_prefs = true
token.allow_write_api = true
token.allow_read_gpx = false
end
get :permissions
assert_response :success
assert_select "osm > permissions", :count => 1 do
assert_select "permission", :count => 2
assert_select "permission[name=allow_read_prefs]", :count => 1
assert_select "permission[name=allow_write_api]", :count => 1
assert_select "permission[name=allow_read_gpx]", :count => 0
end
end
end