def test_empty_group_relationship(self): """Tests creation of following structure. Group: parent_group { Group: member_group {} User: member_user } Updates parent_group to {} Checks for parent_group members to be empty. """ parent_group = "parent_group" member_group = "member_group" member_user = "******" ts = TSApiWrapper(DISABLE_SSL) ts.login(HOSTPORT, USERNAME, PASSWORD) # Create Parent Group ts.create_group(parent_group, parent_group) # Create members ts.create_group(member_group, member_group) ts.create_user(member_user, member_user) # Update parent group with members. parent_gid = ts.get_groupid_with_name(parent_group).data member_gid = ts.get_groupid_with_name(member_group).data member_uid = ts.get_userid_with_name(member_user).data ts.update_groups_to_group([member_gid], parent_gid) ts.update_users_to_group([member_uid], parent_gid) # Test for membership. groups = ts.list_groups_in_group(parent_gid).data self.assertEqual(groups[0].id, member_gid) users = ts.list_users_in_group(parent_gid).data self.assertEqual(users[0].id, member_uid) # Update parent group with no members. ts.update_users_to_group([], parent_gid) ts.update_groups_to_group([], parent_gid) # Test for membership. groups = ts.list_groups_in_group(parent_gid).data self.assertEqual(groups, []) users = ts.list_users_in_group(parent_gid).data self.assertEqual(users, []) # Cleanup ts.delete_groups([member_gid, parent_gid]) ts.delete_users([member_uid])
def test_invalid_guids_filtering_before_call(self): """Tests invalid guids are filtered before making API calls. As making API calls with empty guid list is valid these calls should succeed. """ ts = TSApiWrapper(DISABLE_SSL) ts.login(HOSTPORT, USERNAME, PASSWORD) analyst_group_guid = "c241143a-0e2b-44b6-9cbc-c2b3cff8c57d" invalid_guid_list = [None, "a", 1, "acdf1234-1-1-1-3", ""] # Validate various calls which accept guid list. status = ts.add_groups_to_group(invalid_guid_list, analyst_group_guid).status self.assertEqual(status, Constants.OPERATION_SUCCESS) status = ts.update_users_to_group(invalid_guid_list, analyst_group_guid).status self.assertEqual(status, Constants.OPERATION_SUCCESS) status = ts.update_groups_to_group(invalid_guid_list, analyst_group_guid).status self.assertEqual(status, Constants.OPERATION_SUCCESS) status = ts.delete_users(invalid_guid_list).status self.assertEqual(status, Constants.OPERATION_SUCCESS) status = ts.delete_groups(invalid_guid_list).status self.assertEqual(status, Constants.OPERATION_SUCCESS)