iro/tests/task.py
branchdevel
changeset 234 08fcc2b6df99
parent 231 3929338fd17f
child 239 4cf5e664c847
--- a/iro/tests/task.py	Sun Mar 18 14:08:06 2012 +0100
+++ b/iro/tests/task.py	Wed Mar 21 17:24:46 2012 +0100
@@ -1,5 +1,5 @@
 from twisted.internet import reactor
-from twisted.internet.defer import inlineCallbacks
+from twisted.internet.defer import inlineCallbacks, Deferred
 
 from Queue import deque
 
@@ -63,22 +63,29 @@
         exjob = yield exJobs.create(u, [Telnumber('123456789')], SMS('test'), ['test'])
         
         task=Task(Telnumber('123456789'), exjob)
-        ret = yield task._run()
+        task.d=Deferred()
+        task._run()
+        ret = yield task.d
         self.assertIsInstance(ret, Status)
         self.assertEqual(ret.provider, p)
         self.assertEqual(ret.route, "test")
 
-    @inlineCallbacks
     def testNoRoute(self):
         with self.session() as session:
             u = User(name='test',apikey='abcdef123456789')
             session.add(u)
-
-        exjob = yield exJobs.create(u, [Telnumber('123456789')], SMS('test'), [])
         
-        task=Task(Telnumber('123456789'), exjob)
-        d = task._run()
-        self.assertFailure(d, NoRouteForTask)
+        def c(exjob):
+            task = Task(Telnumber('123456789'), exjob)
+            task.d = Deferred()
+            task._run()
+            self.assertFailure(task.d, NoRouteForTask)
+            return task.d
+
+        d = exJobs.create(u, [Telnumber('123456789')], SMS('test'), [])
+        d.addCallback(c)
+        return d
+        
 
     def testSetStatus(self):
         task=Task(Telnumber('123456789'), None)