소스 검색

Tests passing

Ask Solem 11 년 전
부모
커밋
04a3cf379b
1개의 변경된 파일10개의 추가작업 그리고 0개의 파일을 삭제
  1. 10 0
      celery/canvas.py

+ 10 - 0
celery/canvas.py

@@ -432,6 +432,16 @@ class group(Signature):
                 task['args'] = task._merge(d['args'])[0]
         return group(tasks, **kwdict(d['options']))
 
+    def apply_async(self, *args, **kwargs):
+        if not self.tasks:
+            return self.freeze()  # empty group returns GroupResult
+        return Signature.apply_async(self, *args, **kwargs)
+
+    def apply(self, *args, **kwargs):
+        if not self.tasks:
+            return self.freeze()  # empty group returns GroupResult
+        return Signature.apply(self, *args, **kwargs)
+
     def __call__(self, *partial_args, **opts):
         tasks = [task.clone() for task in self.tasks]
         if not tasks: