res = r.filter_tags(["resource2", "resource3"], ["a resource"], 0, 999999999) is_success(desc, res) r.test_print(desc, len(r.json.loads(res.content)['resources']) == 1) r.test_print(desc, r.json.loads(res.content)['resources'][0]['resource_id'] == resource3) desc = "### Check behavior with empty included tags ###" res = r.filter_tags([], ["a resource"], 0, 999999999) is_success(desc, res) r.test_print(desc, len(r.json.loads(res.content)['resources']) == 2) r.test_print(desc, r.json.loads(res.content)['resources'][1]['resource_id'] == resource3) desc = "### Add permission to root folder & one resource to non_admin user ###" res = r.get_groups() is_success(desc, res) group_id = r.json.loads(res.content)['results'][1]['group_id'] res = r.add_group_permission_to_resource(1, [group_id], ['view']) res = r.add_group_permission_to_resource(resource1, [group_id], ['view']) is_success(desc, res) """" ---login as non_admin user with permissions to resource1--- """ r.session = non_admin_session desc = "### ensure that tag filter can only see one resource and the root folder ###" res = r.filter_tags([],[], 0, 99999999) is_success(desc, res) r.test_print(desc, len(r.json.loads(res.content)['resources']) == 2) r.test_print(desc, r.json.loads(res.content)['resources'][0]['name'] == 'root') r.test_print(desc, r.json.loads(res.content)['resources'][1]['name'] == 'r1')
test_print(desc, len(r.json.loads(res.content)['results']) == 3) test_print(desc, r.json.loads(res.content)['results'][1]['username'] == 'rahul') desc = '#### create 2 groups ####' res = r.create_group("group1", "nope", True, True, True, False) test_print(desc, res.status_code < 300) test_print(desc, res.content) group_id1 = r.json.loads(res.content)['results']['insertId'] res = r.create_group("group2", "nope", True, True, True, False) test_print(desc, res.status_code < 300) test_print(desc, res.content) group_id2 = r.json.loads(res.content)['results']['insertId'] desc = '#### Give both groups permission to root ####' res = r.add_group_permission_to_resource(1, [group_id1], ['view']) test_print(desc, res.status_code < 300) res = r.add_group_permission_to_resource(1, [group_id2], ['view']) test_print(desc, res.status_code < 300) desc = '#### add rahul, and ashwin to the first group ####' res = r.add_users_to_group([rahul_user_id, ashwin_user_id], group_id1) test_print(desc, res.status_code < 300) desc = '#### add just ashwin to the second group ####' res = r.add_users_to_group([ashwin_user_id], group_id2) test_print(desc, res.status_code < 300) desc = '#### create 4 resources ####' res = r.create_resource("res1", "res1", 'free', 1000, 0, 1)
test_print(desc, res.status_code < 300) rahul_user_id = r.json.loads(res.content)['insertId'] rahul_group_id = 2 desc = '#### create 1 group ####' res = r.create_group("group1", "nope", True, True, True, False) test_print(desc, res.status_code < 300) test_print(desc, res.content) group_id1 = r.json.loads(res.content)['results']['insertId'] desc = '#### add rahul to the first group ####' res = r.add_users_to_group([rahul_user_id], group_id1) test_print(desc, res.status_code < 300) desc = '#### Give group 1 view access to root resource ####' res = r.add_group_permission_to_resource(root_resource_id, [group_id1], ['view']) test_print(desc, res.status_code < 300) desc = '#### Give rahul view access to root ####' res = r.add_group_permission_to_resource(root_resource_id, [rahul_group_id], ['view']) test_print(desc, res.status_code < 300) desc = '#### try adding reserve permission to a folder ####' res = r.add_group_permission_to_resource(folder_id1, [group_id1], ['reserve']) test_print(desc, res.status_code > 300) desc = '#### try adding manage permission to a folder ####' res = r.add_group_permission_to_resource(folder_id2, [group_id1], ['manage']) test_print(desc, res.status_code > 300) desc = '#### try adding permission to resource before its parent folder can be seen ####'
res = r.create_user('rahul', 'rahul123') test_print(desc, res.status_code < 300) user_id = r.json.loads(res.content)['insertId'] desc = '#### get all users in DB, make sure there are 2 now and that the second username == rahul ####' res = r.get_all_users() test_print(desc, len(r.json.loads(res.content)['results']) == 2) test_print(desc, r.json.loads(res.content)['results'][1]['username'] == 'rahul') desc = '#### create a group and let it view the root ####' res = r.create_group("fungroup", "nope", True, True, True, False) test_print(desc, res.status_code < 300) test_print(desc, res.content) group_id = r.json.loads(res.content)['results']['insertId'] res = r.add_group_permission_to_resource(1, [group_id], ['view']) desc = '#### get groups and check if there are 3 ####' res = r.get_groups() #Check is 3 because of users private groups test_print(desc, len(r.json.loads(res.content)['results']) == 3) test_print(desc, r.json.loads(res.content)['results'][2]['group_name'] == "fungroup") desc = '#### update group ####' res = r.update_group(group_id, "editedGroup", "fun", False, False, True) test_print(desc, res.status_code < 300) desc = '#### make sure update has persisted ####' res = r.get_groups() test_print(desc, len(r.json.loads(res.content)['results']) == 3) test_print(desc, r.json.loads(res.content)['results'][2]['group_name'] == 'editedGroup')
test_print(desc, res.status_code < 300) rahul_user_id = r.json.loads(res.content)['insertId'] rahul_group_id = 2 desc = '#### create 1 group ####' res = r.create_group("group1", "nope", True, True, True, False) test_print(desc, res.status_code < 300) test_print(desc, res.content) group_id1 = r.json.loads(res.content)['results']['insertId'] desc = '#### add rahul to the first group ####' res = r.add_users_to_group([rahul_user_id], group_id1) test_print(desc, res.status_code < 300) desc = '#### Give group 1 view access to root resource ####' res = r.add_group_permission_to_resource(root_resource_id, [group_id1], ['view']) test_print(desc, res.status_code < 300) desc = '#### Give rahul view access to root ####' res = r.add_group_permission_to_resource(root_resource_id, [rahul_group_id], ['view']) test_print(desc, res.status_code < 300) desc = '#### add view permission to folder1 ####' res = r.add_group_permission_to_resource(folder_id1, [group_id1], ['view']) test_print(desc, res.status_code < 300) desc = '#### try to update parent for folder1 ####' res = r.update_parent_of_resource(folder_id1, folder_id2) test_print(desc, res.status_code > 300) test_print(desc, r.json.loads(res.content)['parentResourcePermissionMismatchError'] == 1)