Ask Solem пре 9 година
родитељ
комит
ed3a265a87
3 измењених фајлова са 14 додато и 8 уклоњено
  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):
     def maybe_throw(self, propagate=True, callback=None):
         cache = self._get_task_meta() if self._cache is None else self._cache
         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:
         if state in states.PROPAGATE_STATES and propagate:
             self.throw(value, self._to_remote_traceback(tb))
             self.throw(value, self._to_remote_traceback(tb))
         if callback is not None:
         if callback is not None:
@@ -296,7 +297,7 @@ class AsyncResult(ResultBase):
 
 
     def _to_remote_traceback(self, tb):
     def _to_remote_traceback(self, tb):
         if tb and tblib is not None and self.app.conf.task_remote_tracebacks:
         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):
     def build_graph(self, intermediate=False, formatter=None):
         graph = DependencyGraph(
         graph = DependencyGraph(

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

@@ -438,7 +438,7 @@ class test_crontab_remaining_estimate(AppCase):
         # *** WARNING ***
         # *** WARNING ***
         # This test triggers an infinite loop in case of a regression
         # This test triggers an infinite loop in case of a regression
         with self.assertRaises(RuntimeError):
         with self.assertRaises(RuntimeError):
-            next = self.next_ocurrance(
+            self.next_ocurrance(
                 self.crontab(day_of_month=31, month_of_year=4),
                 self.crontab(day_of_month=31, month_of_year=4),
                 datetime(2010, 1, 28, 14, 30, 15),
                 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):
 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):
 def save_result(app, task):
@@ -69,8 +72,8 @@ class test_AsyncResult(AppCase):
         self.task5 = mock_task(
         self.task5 = mock_task(
             'task3', states.FAILURE, KeyError('blue'), PYTRACEBACK,
             '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)
             save_result(self.app, task)
 
 
         @self.app.task(shared=False)
         @self.app.task(shared=False)
@@ -224,7 +227,7 @@ class test_AsyncResult(AppCase):
         try:
         try:
             withtb.get()
             withtb.get()
         except KeyError:
         except KeyError:
-            tb  = traceback.format_exc()
+            tb = traceback.format_exc()
             self.assertNotIn('  File "foo.py", line 2, in foofunc', tb)
             self.assertNotIn('  File "foo.py", line 2, in foofunc', tb)
             self.assertNotIn('  File "bar.py", line 3, in barfunc', tb)
             self.assertNotIn('  File "bar.py", line 3, in barfunc', tb)
             self.assertIn('KeyError:', tb)
             self.assertIn('KeyError:', tb)
@@ -234,12 +237,14 @@ class test_AsyncResult(AppCase):
 
 
     @skip.unless_module('tblib')
     @skip.unless_module('tblib')
     def test_raising_remote_tracebacks(self):
     def test_raising_remote_tracebacks(self):
+        withtb = self.app.AsyncResult(self.task5['id'])
+
         old, self.app.conf.remote_tracebacks = (
         old, self.app.conf.remote_tracebacks = (
             self.app.conf.remote_tracebacks, True)
             self.app.conf.remote_tracebacks, True)
         try:
         try:
             withtb.get()
             withtb.get()
         except KeyError:
         except KeyError:
-            tb  = traceback.format_exc()
+            tb = traceback.format_exc()
             self.assertIn('  File "foo.py", line 2, in foofunc', tb)
             self.assertIn('  File "foo.py", line 2, in foofunc', tb)
             self.assertIn('  File "bar.py", line 3, in barfunc', tb)
             self.assertIn('  File "bar.py", line 3, in barfunc', tb)
             self.assertIn('KeyError:', tb)
             self.assertIn('KeyError:', tb)