parent
f1dc3f2713
commit
7dd5217299
@ -0,0 +1,231 @@ |
||||
<?php |
||||
require_once api_get_path(SYS_CODE_PATH).'permissions/permissions_functions.inc.php'; |
||||
|
||||
class TestPermissions extends UnitTestCase { |
||||
/** |
||||
* This function is called when we assign a role to a user or a group |
||||
* @param string |
||||
* @param string |
||||
* @param int |
||||
* @param int |
||||
* @return string |
||||
*/ |
||||
function testAssignRole(){ |
||||
$content=''; |
||||
$action=''; |
||||
$id=1; |
||||
$role_id=1; |
||||
$scope='course'; |
||||
$res = assign_role($content, $action, $id, $role_id, $scope); |
||||
$this->assertTrue(is_string($res)); |
||||
//var_dump($res); |
||||
} |
||||
|
||||
/** |
||||
This function displays a checked or unchecked checkbox. The checkbox will be checked if the |
||||
* user, group or role has the permission for the given tool, unchecked if the user, group or role |
||||
* does not have the right |
||||
* @param array |
||||
* @param string |
||||
* @param string |
||||
* @param array |
||||
* @return null |
||||
*/ |
||||
function testDisplayCheckboxMatrix(){ |
||||
ob_start(); |
||||
$permission_array=array(); |
||||
$tool=''; |
||||
$permission=1; |
||||
$inherited_permissions=array(); |
||||
$res = display_checkbox_matrix($permission_array, $tool, $permission, $inherited_permissions); |
||||
$this->assertTrue(is_null($res)); |
||||
ob_end_clean(); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function displays a checked or unchecked image. The image will be checked if the |
||||
* user, group or role has the permission for the given tool, unchecked if the user, group or role |
||||
* does not have the right |
||||
* @param $permission_array the array that contains all the permissions of the user, group, role |
||||
* @param $tool the tool we want to check a permission for |
||||
* @param $permission the permission we want to check for |
||||
*/ |
||||
function testDisplayImageMatrix(){ |
||||
//ob_start(); |
||||
$permission_array=array(); |
||||
$tool=1; |
||||
$permission=1; |
||||
$inherited_permissions=array($tool => array()); |
||||
$course_admin=false; |
||||
$editable=true; |
||||
$res = display_image_matrix($permission_array, $tool, $permission,$inherited_permissions, $course_admin, $editable); |
||||
$this->assertTrue(is_null($res)); |
||||
//ob_end_clean(); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* Slightly modified: Toon Keppens |
||||
* This function displays a checked or unchecked image. The image will be checked if the |
||||
* user, group or role has the permission for the given tool, unchecked if the user, group or role |
||||
* does not have the right |
||||
* @param int |
||||
* @param string |
||||
* @param string |
||||
* @param array |
||||
* @param bool |
||||
*/ |
||||
function testDisplayImageMatrixForBlogs(){ |
||||
$permission_array=array(); |
||||
$user_id=1; |
||||
$tool=1; |
||||
$permission=1; |
||||
$inherited_permissions=array(); |
||||
$course_admin=false; |
||||
$editable=true; |
||||
$res = display_image_matrix_for_blogs($permission_array, $user_id, $tool, $permission,$inherited_permissions, $course_admin, $editable); |
||||
$this->assertTrue(is_null($res)); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function displays a list off all the roles of the course (and those defined by the platform admin) |
||||
* @param |
||||
* @param |
||||
*/ |
||||
function testDisplayRoleList(){ |
||||
$current_course_roles=''; |
||||
$current_platform_roles=''; |
||||
$res = display_role_list($current_course_roles, $current_platform_roles); |
||||
$this->assertTrue(is_null($res)); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function gets all the current roles of the user or group |
||||
* @param string |
||||
* @return array that contains the name of the roles the user has |
||||
*/ |
||||
function testGetAllRoles(){ |
||||
$content='course'; |
||||
$res = get_all_roles($content); |
||||
if (!is_null($res)){ |
||||
$this->assertTrue(is_array($res)); |
||||
} |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function retrieves the existing permissions of a user, group or role. |
||||
* @param $content are we retrieving the rights of a user, a group or a role (the database depends on it) |
||||
* @param $id the id of the user, group or role |
||||
*/ |
||||
function testGetPermissions(){ |
||||
$content='user'; |
||||
$id=1; |
||||
$res = get_permissions($content, $id); |
||||
$this->assertTrue(is_array($res)); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function gets all the current roles of the user or group |
||||
* @param $content are we finding the roles for a user or a group (the database depends on it) |
||||
* @param $id the id of the user or group |
||||
* @return array that contains the name of the roles the user has |
||||
*/ |
||||
function testGetRoles(){ |
||||
$content='user'; |
||||
$id=1; |
||||
$scope='course'; |
||||
$res = get_roles($content, $id, $scope); |
||||
$this->assertTrue(is_array($res)); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function gets all the roles that are defined |
||||
* @param $content are we finding the roles for a user or a group (the database depends on it) |
||||
* @param $id the id of the user or group |
||||
* @param string Deprecated parameter allowing use of 'platform' scope - the corresponding tables don't exist anymore so the scope is always set to 'course' |
||||
* @return array that contains the name of the roles the user has |
||||
*/ |
||||
function testGetRolesPermissions(){ |
||||
$content='user'; |
||||
$id=1; |
||||
$scope='course'; |
||||
$res = get_roles_permissions($content, $id, $scope); |
||||
if (!is_null($res)){ |
||||
$this->assertTrue(is_array($res)); |
||||
} |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* the array that contains the current permission a user, group or role has will now be changed depending on |
||||
* the Dokeos Config Setting for the permissions (limited [add, edit, delete] or full [view, add, edit, delete, move, visibility] |
||||
* @param $content are we retrieving the rights of a user, a group or a role (the database depends on it) |
||||
* @param $id the id of the user, group or role |
||||
* @author Patrick Cool <patrick.cool@ugent.be>, Ghent University |
||||
* @version 1.0 |
||||
* @todo currently there is a setting user_permissions and group_permissions. We should merge this in one config setting. |
||||
*/ |
||||
function testLimitedOrFull(){ |
||||
$current_permissions=array(); |
||||
$res = limited_or_full($current_permissions); |
||||
if (!is_null($res)){ |
||||
$this->assertTrue(is_array($res)); |
||||
} |
||||
//var_dump($res); |
||||
} |
||||
|
||||
function testMyPrintR(){ |
||||
ob_start(); |
||||
$array=''; |
||||
$res = my_print_r($array); |
||||
$this->assertTrue(is_null($res)); |
||||
ob_end_clean(); |
||||
//var_dump($res); |
||||
} |
||||
|
||||
/** |
||||
* This function merges permission arrays. Each permission array has the following structure |
||||
* a permission array has a tool contanst as a key and an array as a value. This value array consists of all the permissions that are granted in that tool. |
||||
*/ |
||||
function testPermissionArrayMerge(){ |
||||
$array1=array(); |
||||
$array2=array(); |
||||
$res = permission_array_merge($array1, $array2); |
||||
$this->assertTrue(is_array($res)); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function stores one permission in the correct table. |
||||
* @param $content are we storing rights for a user, a group or a role (the database depends on it) |
||||
* @param $action are we granting or revoking a permission? |
||||
* @param $id the id of the user, group or role |
||||
* @param $tool the tool |
||||
* @param $permission the permission the user, group or role has been granted or revoked |
||||
*/ |
||||
function testStoreOnePermission(){ |
||||
$content='user'; |
||||
$action='grant'; |
||||
$id=1; |
||||
$tool=''; |
||||
$permission=''; |
||||
$res = store_one_permission($content, $action, $id, $tool,$permission); |
||||
$this->assertTrue(is_string($res)); |
||||
//var_dump($res); |
||||
} |
||||
/** |
||||
* This function stores the permissions in the correct table. |
||||
* Since Checkboxes are used we do not know which ones are unchecked. |
||||
* That's why we first delete them all (for the given user/group/role |
||||
* and afterwards we store the checked ones only. |
||||
* @param $content are we storing rights for a user, a group or a role (the database depends on it) |
||||
* @param $id the id of the user, group or role |
||||
* @author Patrick Cool <patrick.cool@ugent.be>, Ghent University |
||||
* @version 1.0 |
||||
*/ |
||||
function testStorePermissions(){ |
||||
$content='user'; |
||||
$id=1; |
||||
$res = store_permissions($content, $id); |
||||
$this->assertTrue(is_string($res)); |
||||
//var_dump($res); |
||||
} |
||||
} |
||||
?> |
Loading…
Reference in new issue