Beispiel #1
0
    def test_update_es_user_with_groups(self):
        group_doc = {
            'name': 'g1',
            '_id': 'group1',
            'users': []
        }

        # no change if user not in group
        update_es_user_with_groups(group_doc)
        self._check_es_user(None, None)

        # user added to group
        group_doc['users'] = [self.user_id]
        update_es_user_with_groups(group_doc)
        self._check_es_user(['group1'], ['g1'])

        # re-process group with no change
        update_es_user_with_groups(group_doc)
        self._check_es_user(['group1'], ['g1'])

        # user added to new group
        new_group = {
            'name': 'g2',
            '_id': 'group2',
            'users': [self.user_id]
        }
        update_es_user_with_groups(new_group)
        self._check_es_user(['group1', 'group2'], ['g1', 'g2'])
Beispiel #2
0
    def test_update_es_user_with_groups(self):
        group_doc = {
            'name': 'g1',
            '_id': 'group1',
            'users': []
        }

        # no change if user not in group
        update_es_user_with_groups(group_doc)
        self._check_es_user(None, None)

        # user added to group
        group_doc['users'] = [self.user_id]
        update_es_user_with_groups(group_doc)
        self._check_es_user(['group1'], ['g1'])

        # re-process group with no change
        update_es_user_with_groups(group_doc)
        self._check_es_user(['group1'], ['g1'])

        # user added to new group
        new_group = {
            'name': 'g2',
            '_id': 'group2',
            'users': [self.user_id]
        }
        update_es_user_with_groups(new_group)
        self._check_es_user(['group1', 'group2'], ['g1', 'g2'])
Beispiel #3
0
    def test_update_es_user_with_groups_remove_user(self):
        group_doc = {
            'name': 'g1',
            '_id': 'group1',
            'users': [self.user_id],
            'removed_users': set([]),
        }

        # re-process group with no change
        update_es_user_with_groups(group_doc)
        self._check_es_user(['group1'], ['g1'])

        group_doc['removed_users'].add(self.user_id)
        group_doc['users'] = []

        update_es_user_with_groups(group_doc)
        self._check_es_user(None, None)
    def test_update_es_user_with_groups_remove_user(self):
        group_doc = {
            'name': 'g1',
            '_id': 'group1',
            'users': [self.user_id],
            'removed_users': set([]),
        }

        # re-process group with no change
        update_es_user_with_groups(group_doc)
        self._check_es_user(['group1'], ['g1'])

        group_doc['removed_users'].add(self.user_id)
        group_doc['users'] = []

        update_es_user_with_groups(group_doc)
        self._check_es_user(None, None)
Beispiel #5
0
    def test_remove_user_from_groups_partial_match(self):
        original_id = uuid.uuid4().hex
        group_doc = {
            'name': 'original',
            '_id': original_id,
            'users': [self.user_id]
        }

        # set original groups on the user
        update_es_user_with_groups(group_doc)
        self._check_es_user([original_id], ['original'])

        new_id = uuid.uuid4().hex
        group_doc = {
            'name': 'original',
            '_id': new_id,
            'users': [self.user_id]
        }
        remove_group_from_users(group_doc, self.es_client)
Beispiel #6
0
    def test_remove_user_from_groups_partial_match(self):
        original_id = uuid.uuid4().hex
        group_doc = {
            'name': 'original',
            '_id': original_id,
            'users': [self.user_id]
        }

        # set original groups on the user
        update_es_user_with_groups(group_doc)
        self._check_es_user([original_id], ['original'])

        new_id = uuid.uuid4().hex
        group_doc = {
            'name': 'original',
            '_id': new_id,
            'users': [self.user_id]
        }
        remove_group_from_users(group_doc, self.es_client)