From 8ff4242f8ffc8f3ecbdbdacd4f687d3c4071272f Mon Sep 17 00:00:00 2001 From: Marco Date: Sat, 29 Jul 2017 19:09:04 +0200 Subject: [PATCH] Add tests for taking roles away from users via 'Administration' class --- tests/index.php | 60 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/tests/index.php b/tests/index.php index c4ffd3f..24612f6 100644 --- a/tests/index.php +++ b/tests/index.php @@ -324,6 +324,45 @@ function processRequestData(\Delight\Auth\Auth $auth) { return 'ok'; } + else if ($_POST['action'] === 'admin.removeRole') { + if (isset($_POST['role'])) { + if (isset($_POST['id'])) { + try { + $auth->admin()->removeRoleForUserById($_POST['id'], $_POST['role']); + } + catch (\Delight\Auth\UnknownIdException $e) { + return 'unknown ID'; + } + } + elseif (isset($_POST['email'])) { + try { + $auth->admin()->removeRoleForUserByEmail($_POST['email'], $_POST['role']); + } + catch (\Delight\Auth\InvalidEmailException $e) { + return 'unknown email address'; + } + } + elseif (isset($_POST['username'])) { + try { + $auth->admin()->removeRoleForUserByUsername($_POST['username'], $_POST['role']); + } + catch (\Delight\Auth\UnknownUsernameException $e) { + return 'unknown username'; + } + catch (\Delight\Auth\AmbiguousUsernameException $e) { + return 'ambiguous username'; + } + } + else { + return 'either ID, email or username required'; + } + } + else { + return 'role required'; + } + + return 'ok'; + } else { throw new Exception('Unexpected action: '.$_POST['action']); } @@ -559,6 +598,27 @@ function showGuestUserForm() { echo ''; echo ''; echo ''; + + echo '
'; + echo ''; + echo ' '; + echo ''; + echo ''; + echo '
'; + + echo '
'; + echo ''; + echo ' '; + echo ''; + echo ''; + echo '
'; + + echo '
'; + echo ''; + echo ' '; + echo ''; + echo ''; + echo '
'; } function createRolesOptions() {