Ask Solem 9 years ago
parent
commit
ed3a265a87
3 changed files with 14 additions and 8 deletions
  1. 3 2
      celery/result.py
  2. 1 1
      celery/tests/app/test_schedules.py
  3. 10 5
      celery/tests/tasks/test_result.py

+ 3 - 2
celery/result.py

@@ -287,7 +287,8 @@ class AsyncResult(ResultBase):
 
     def maybe_throw(self, propagate=True, callback=None):
         cache = self._get_task_meta() if self._cache is None else self._cache
-        state, value, tb = cache['status'], cache['result'], cache.get('traceback')
+        state, value, tb = (
+            cache['status'], cache['result'], cache.get('traceback'))
         if state in states.PROPAGATE_STATES and propagate:
             self.throw(value, self._to_remote_traceback(tb))
         if callback is not None:
@@ -296,7 +297,7 @@ class AsyncResult(ResultBase):
 
     def _to_remote_traceback(self, tb):
         if tb and tblib is not None and self.app.conf.task_remote_tracebacks:
-            return tblib.Traceback.from_string(tbstring).as_traceback()
+            return tblib.Traceback.from_string(tb).as_traceback()
 
     def build_graph(self, intermediate=False, formatter=None):
         graph = DependencyGraph(

+ 1 - 1
celery/tests/app/test_schedules.py

@@ -438,7 +438,7 @@ class test_crontab_remaining_estimate(AppCase):
         # *** WARNING ***
         # This test triggers an infinite loop in case of a regression
         with self.assertRaises(RuntimeError):
-            next = self.next_ocurrance(
+            self.next_ocurrance(
                 self.crontab(day_of_month=31, month_of_year=4),
                 datetime(2010, 1, 28, 14, 30, 15),
             )

+ 10 - 5
celery/tests/tasks/test_result.py

@@ -34,7 +34,10 @@ Doesn't matter: really!\
 
 
 def mock_task(name, state, result, traceback=None):
-    return dict(id=uuid(), name=name, state=state, result=result, traceback=traceback)
+    return dict(
+        id=uuid(), name=name, state=state,
+        result=result, traceback=traceback,
+    )
 
 
 def save_result(app, task):
@@ -69,8 +72,8 @@ class test_AsyncResult(AppCase):
         self.task5 = mock_task(
             'task3', states.FAILURE, KeyError('blue'), PYTRACEBACK,
         )
-
-        for task in (self.task1, self.task2, self.task3, self.task4, self.task5):
+        for task in (self.task1, self.task2,
+                     self.task3, self.task4, self.task5):
             save_result(self.app, task)
 
         @self.app.task(shared=False)
@@ -224,7 +227,7 @@ class test_AsyncResult(AppCase):
         try:
             withtb.get()
         except KeyError:
-            tb  = traceback.format_exc()
+            tb = traceback.format_exc()
             self.assertNotIn('  File "foo.py", line 2, in foofunc', tb)
             self.assertNotIn('  File "bar.py", line 3, in barfunc', tb)
             self.assertIn('KeyError:', tb)
@@ -234,12 +237,14 @@ class test_AsyncResult(AppCase):
 
     @skip.unless_module('tblib')
     def test_raising_remote_tracebacks(self):
+        withtb = self.app.AsyncResult(self.task5['id'])
+
         old, self.app.conf.remote_tracebacks = (
             self.app.conf.remote_tracebacks, True)
         try:
             withtb.get()
         except KeyError:
-            tb  = traceback.format_exc()
+            tb = traceback.format_exc()
             self.assertIn('  File "foo.py", line 2, in foofunc', tb)
             self.assertIn('  File "bar.py", line 3, in barfunc', tb)
             self.assertIn('KeyError:', tb)