celery: added test view to test celery exception handling
This commit is contained in:
parent
bb46f148f2
commit
c2075c1239
3 changed files with 28 additions and 0 deletions
|
|
@ -40,6 +40,15 @@ def admin_routes(config):
|
|||
route_name='ops_error_test', request_method='GET',
|
||||
renderer='json_ext')
|
||||
|
||||
config.add_route(
|
||||
name='ops_celery_error_test',
|
||||
pattern='/error-celery')
|
||||
config.add_view(
|
||||
OpsView,
|
||||
attr='ops_celery_error_test',
|
||||
route_name='ops_celery_error_test', request_method='GET',
|
||||
renderer='json_ext')
|
||||
|
||||
config.add_route(
|
||||
name='ops_redirect_test',
|
||||
pattern='/redirect')
|
||||
|
|
|
|||
|
|
@ -66,6 +66,20 @@ class OpsView(BaseAppView):
|
|||
'Client:{}. Generation time: {}.'.format(self.request.user, time.time()))
|
||||
raise TestException(msg)
|
||||
|
||||
def ops_celery_error_test(self):
|
||||
"""
|
||||
Test exception handling and emails on errors
|
||||
"""
|
||||
from rhodecode.lib.celerylib import tasks, run_task
|
||||
|
||||
# add timeout so we add some sort of rate limiter
|
||||
time.sleep(2)
|
||||
|
||||
msg = ('RhodeCode Enterprise test exception. '
|
||||
'Client:{}. Generation time: {}.'.format(self.request.user, time.time()))
|
||||
celery_task = run_task(tasks.test_celery_exception, msg)
|
||||
return {'task': str(celery_task)}
|
||||
|
||||
def ops_redirect_test(self):
|
||||
"""
|
||||
Test redirect handling
|
||||
|
|
|
|||
|
|
@ -402,6 +402,11 @@ def sync_last_update_for_objects(*args, **kwargs):
|
|||
repo_gr.update_commit_cache()
|
||||
|
||||
|
||||
@async_task(ignore_result=True, base=RequestContextTask)
|
||||
def test_celery_exception(msg):
|
||||
raise Exception(f'Test exception: {msg}')
|
||||
|
||||
|
||||
@async_task(ignore_result=True, base=RequestContextTask)
|
||||
def sync_last_update(*args, **kwargs):
|
||||
sync_last_update_for_objects(*args, **kwargs)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue