Revision 1b27f8a2
b/snf-astakos-app/astakos/im/management/commands/quota.py | ||
---|---|---|
113 | 113 |
if user_ident is not None: |
114 | 114 |
users = [self.get_user(user_ident)] |
115 | 115 |
else: |
116 |
users = AstakosUser.objects.verified()
|
|
116 |
users = AstakosUser.objects.moderated()
|
|
117 | 117 |
|
118 | 118 |
if list_only: |
119 | 119 |
qh_quotas, astakos_i = list_user_quotas(users) |
... | ... | |
150 | 150 |
else: |
151 | 151 |
raise CommandError('Please specify user by uuid or email') |
152 | 152 |
|
153 |
if not user.email_verified:
|
|
154 |
raise CommandError('%s is not a verified user.\n' % user.uuid)
|
|
153 |
if not user.moderated:
|
|
154 |
raise CommandError('%s is not an accepted user.\n' % user.uuid)
|
|
155 | 155 |
|
156 | 156 |
return user |
157 | 157 |
|
b/snf-astakos-app/astakos/im/management/commands/reconcile-resources-astakos.py | ||
---|---|---|
82 | 82 |
qh_holdings = service_get_quotas(astakos, query) |
83 | 83 |
|
84 | 84 |
if userid is None: |
85 |
users = AstakosUser.objects.verified()
|
|
85 |
users = AstakosUser.objects.moderated()
|
|
86 | 86 |
else: |
87 | 87 |
try: |
88 | 88 |
users = [AstakosUser.objects.get(uuid=userid)] |
b/snf-astakos-app/astakos/im/models.py | ||
---|---|---|
315 | 315 |
def verified(self): |
316 | 316 |
return self.filter(email_verified=True) |
317 | 317 |
|
318 |
def moderated(self): |
|
319 |
return self.filter(moderated=True) |
|
320 |
|
|
318 | 321 |
def uuid_catalog(self, l=None): |
319 | 322 |
""" |
320 | 323 |
Returns a uuid to username mapping for the uuids appearing in l. |
b/snf-astakos-app/astakos/im/quotas.py | ||
---|---|---|
316 | 316 |
|
317 | 317 |
|
318 | 318 |
def qh_add_resource_limit(resource, diff): |
319 |
objs = AstakosUser.forupdate.filter(Q(email_verified=True) &
|
|
319 |
objs = AstakosUser.forupdate.filter(Q(moderated=True) &
|
|
320 | 320 |
~Q(policy=resource)) |
321 | 321 |
users = objs.order_by('id').select_for_update() |
322 | 322 |
uuids = [u.uuid for u in users] |
... | ... | |
326 | 326 |
|
327 | 327 |
def qh_sync_new_resource(resource, limit): |
328 | 328 |
users = AstakosUser.forupdate.filter( |
329 |
email_verified=True).order_by('id').select_for_update()
|
|
329 |
moderated=True).order_by('id').select_for_update()
|
|
330 | 330 |
|
331 | 331 |
resource_name = resource.name |
332 | 332 |
data = [] |
b/snf-astakos-app/astakos/im/tests/api.py | ||
---|---|---|
51 | 51 |
class QuotaAPITest(TestCase): |
52 | 52 |
def test_0(self): |
53 | 53 |
client = Client() |
54 |
backend = activation_backends.get_backend() |
|
54 | 55 |
|
55 | 56 |
component1 = Component.objects.create(name="comp1") |
56 | 57 |
register.add_service(component1, "service1", "type1", []) |
... | ... | |
72 | 73 |
|
73 | 74 |
# create user |
74 | 75 |
user = get_local_user('test@grnet.gr') |
75 |
quotas.qh_sync_user(user) |
|
76 |
backend.accept_user(user) |
|
77 |
non_moderated_user = get_local_user('nonmon@example.com') |
|
76 | 78 |
|
77 | 79 |
component2 = Component.objects.create(name="comp2") |
78 | 80 |
register.add_service(component2, "service2", "type2", []) |
... | ... | |
108 | 110 |
for name in resource_names: |
109 | 111 |
assertIn(name, system_quota) |
110 | 112 |
|
113 |
nmheaders = {'HTTP_X_AUTH_TOKEN': non_moderated_user.auth_token} |
|
114 |
r = client.get(u('quotas/'), **nmheaders) |
|
115 |
self.assertEqual(r.status_code, 200) |
|
116 |
body = json.loads(r.content) |
|
117 |
self.assertEqual(body, {}) |
|
118 |
|
|
111 | 119 |
r = client.get(u('service_quotas')) |
112 | 120 |
self.assertEqual(r.status_code, 401) |
113 | 121 |
|
Also available in: Unified diff