Revision 757f3256 snf-astakos-app/astakos/test/views.py
b/snf-astakos-app/astakos/test/views.py | ||
---|---|---|
33 | 33 |
|
34 | 34 |
from datetime import datetime, timedelta |
35 | 35 |
|
36 |
from astakos.im.models import AstakosUser, PendingMembershipError
|
|
36 |
from astakos.im.models import AstakosUser |
|
37 | 37 |
from astakos.im.functions import (join_project, leave_project, |
38 | 38 |
submit_application, approve_application) |
39 |
from astakos.im.project_xctx import cmd_project_transaction_context |
|
40 |
from astakos.im.retry_xctx import RetryException |
|
39 |
from synnefo.lib.db.transaction import commit_on_success_strict |
|
41 | 40 |
|
42 |
@cmd_project_transaction_context(sync=True)
|
|
41 |
@commit_on_success_strict()
|
|
43 | 42 |
def join(proj_id, user_id, ctx=None): |
44 | 43 |
join_project(proj_id, user_id) |
45 | 44 |
|
46 |
@cmd_project_transaction_context(sync=True)
|
|
45 |
@commit_on_success_strict()
|
|
47 | 46 |
def leave(proj_id, user_id, ctx=None): |
48 |
try: |
|
49 |
leave_project(proj_id, user_id) |
|
50 |
except PendingMembershipError as e: |
|
51 |
print e |
|
52 |
raise RetryException() |
|
47 |
leave_project(proj_id, user_id) |
|
53 | 48 |
|
54 |
@cmd_project_transaction_context()
|
|
49 |
@commit_on_success_strict()
|
|
55 | 50 |
def submit(name, user_id, prec, ctx=None): |
56 | 51 |
try: |
57 | 52 |
owner = AstakosUser.objects.get(id=user_id) |
... | ... | |
73 | 68 |
app = submit_application(data, request_user=owner) |
74 | 69 |
return app.id |
75 | 70 |
|
76 |
@cmd_project_transaction_context(sync=True)
|
|
71 |
@commit_on_success_strict()
|
|
77 | 72 |
def approve(app_id, ctx=None): |
78 | 73 |
approve_application(app_id) |
Also available in: Unified diff