Example #1
0
    def _test_update(self, auth_obj, user_or_group):
        serializer = self.get_serializer(user_or_group)

        assign_perm('cloud.create_cloudaccount', auth_obj)

        instance = {
            user_or_group: auth_obj,
            'permissions': ['create'],
        }

        validated_data = {
            user_or_group: auth_obj,
            'permissions': ['admin'],
            'model_cls': CloudAccount,
        }

        obj = serializer.update(instance, validated_data)

        self.assertEqual(obj[user_or_group], auth_obj)
        self.assertEqual(obj['permissions'], ['admin'])

        true = ['admin']

        for perm in CloudAccount._meta.default_permissions:
            if user_or_group == 'user':
                has_perm = auth_obj.has_perm('cloud.%s_cloudaccount' % perm)
            elif user_or_group == 'group':
                has_perm = group_has_perm(auth_obj, '%s_cloudaccount' % perm)
            if perm in true:
                self.assertTrue(has_perm)
            else:
                self.assertFalse(has_perm)
Example #2
0
    def _test_update(self, auth_obj, user_or_group):
        serializer = self.get_serializer(user_or_group)

        assign_perm('cloud.create_cloudaccount', auth_obj)

        instance = {
            user_or_group: auth_obj,
            'permissions': ['create'],
        }

        validated_data = {
            user_or_group: auth_obj,
            'permissions': ['admin'],
            'model_cls': CloudAccount,
        }

        obj = serializer.update(instance, validated_data)

        self.assertEqual(obj[user_or_group], auth_obj)
        self.assertEqual(obj['permissions'], ['admin'])

        true = ['admin']

        for perm in CloudAccount._meta.default_permissions:
            if user_or_group == 'user':
                has_perm = auth_obj.has_perm('cloud.%s_cloudaccount' % perm)
            elif user_or_group == 'group':
                has_perm = group_has_perm(auth_obj, '%s_cloudaccount' % perm)
            if perm in true:
                self.assertTrue(has_perm)
            else:
                self.assertFalse(has_perm)
Example #3
0
    def _test_create(self, auth_obj, user_or_group):
        serializer = self.get_serializer(user_or_group)

        obj = serializer.create({
            user_or_group: auth_obj,
            'permissions': ['view'],
            'object': self.account
        })

        self.assertEqual(obj[user_or_group], auth_obj)
        self.assertEqual(obj['permissions'], ['view'])

        true = ['view']

        for perm in CloudAccount._meta.default_permissions:
            if user_or_group == 'user':
                has_perm = auth_obj.has_perm('cloud.%s_cloudaccount' % perm,
                                             self.account)
            elif user_or_group == 'group':
                has_perm = group_has_perm(auth_obj, '%s_cloudaccount' % perm,
                                          self.account)
            if perm in true:
                self.assertTrue(has_perm)
            else:
                self.assertFalse(has_perm)
Example #4
0
    def _test_create(self, auth_obj, user_or_group):
        serializer = self.get_serializer(user_or_group)

        obj = serializer.create({user_or_group: auth_obj,
                                 'permissions': ['create'],
                                 'model_cls': CloudAccount})

        self.assertEqual(obj[user_or_group], auth_obj)
        self.assertEqual(obj['permissions'], ['create'])

        true = ['create']

        for perm in CloudAccount._meta.default_permissions:
            if user_or_group == 'user':
                has_perm = auth_obj.has_perm('cloud.%s_cloudaccount' % perm)
            elif user_or_group == 'group':
                has_perm = group_has_perm(auth_obj, '%s_cloudaccount' % perm)
            if perm in true:
                self.assertTrue(has_perm)
            else:
                self.assertFalse(has_perm)