# HG changeset patch # User Sandro Knauß # Date 1332516209 -3600 # Node ID 4526747a42cadc4cbb089f07ad9dc8258ff0c31d # Parent 48fba7b4afe9af60a0b2ae9c006ce245f9bacca7 some more messages about job status diff -r 48fba7b4afe9 -r 4526747a42ca iro/model/job.py --- a/iro/model/job.py Fri Mar 23 16:22:32 2012 +0100 +++ b/iro/model/job.py Fri Mar 23 16:23:29 2012 +0100 @@ -1,5 +1,4 @@ -from twisted.python import log -from twisted.python import threadable +from twisted.python import log, threadable from datetime import datetime from collections import MutableMapping @@ -21,6 +20,7 @@ self.tasks={} self.c = 0 self.status = "started" + log.msg("Job(%s) created."%(self.dbjob)) def addTask(self,task): self.tasks[task.recipient] = task @@ -37,6 +37,7 @@ return job.status = status self.status = status + log.msg("Job(%s) status changed to: %s."%(self.dbjob, status)) session.commit() @dbdefer @@ -44,10 +45,10 @@ c = self.incStatus() job = schema.Job.get(session, self.dbjob) - if job.status in ["started","init"]: - self._status(session,"sending") if c == len(self.recipients): self._status(session,"sended") + elif job.status in ["started","init"]: + self._status(session,"sending") if status.costs > 0: o = schema.Offer.get(session, status.provider.name, status.route, self.message.typ) diff -r 48fba7b4afe9 -r 4526747a42ca iro/tests/job.py --- a/iro/tests/job.py Fri Mar 23 16:22:32 2012 +0100 +++ b/iro/tests/job.py Fri Mar 23 16:23:29 2012 +0100 @@ -52,6 +52,7 @@ self.assertEqual(j,[(job.dbjob,)]) self.assertEqual(exJobs[job.dbjob],job) + self.assertEqual(self.log.e[0]['message'], ("Job(%s) created."%job.dbjob,)) def testCreate2(self): with self.session() as session: @@ -117,7 +118,8 @@ self.job.setError(Task(Telnumber('123456789'),self),Exception("muhaha")) errors = self.flushLoggedErrors(Exception) self.assertEqual(len(errors), 1) - self.assertEqual(self.log.e[0]['why'], "Error: Job(%s) to '0049123456789' failed."%self.job.dbjob) + self.assertEqual(self.log.e[1]['message'], ("Job(%s) status changed to: error."%self.job.dbjob,)) + self.assertEqual(self.log.e[2]['why'], "Error: Job(%s) to '0049123456789' failed."%self.job.dbjob) with self.session() as session: u = session.merge(self.user) @@ -129,7 +131,8 @@ status = Status(self.provider,"a") self.job.setStatus(task, status) - self.assertEqual(self.log.e[0]['message'], ("Job(%s) to '0049123456789' ended sucecessfully via bla:a."%self.job.dbjob,)) + self.assertEqual(self.log.e[1]['message'], ("Job(%s) status changed to: sended."%self.job.dbjob,)) + self.assertEqual(self.log.e[2]['message'], ("Job(%s) to '0049123456789' ended sucecessfully via bla:a."%self.job.dbjob,)) with self.session() as session: u = session.merge(self.user) diff -r 48fba7b4afe9 -r 4526747a42ca iro/tests/offer_integrated.py --- a/iro/tests/offer_integrated.py Fri Mar 23 16:22:32 2012 +0100 +++ b/iro/tests/offer_integrated.py Fri Mar 23 16:23:29 2012 +0100 @@ -15,6 +15,7 @@ from iro.offer import Smstrade, SMTP, Offer from iro.offer.smstrade import SmstradeException, StatusCode +from iro.error import NoRouteForTask from ..test_helpers.dbtestcase import DBTestCase from ..test_helpers.utils import DummyPool @@ -65,7 +66,7 @@ t = Task(Telnumber("0123456789"),j) yield t.start() - self.assertEqual(self.log.e[0]['message'], ("Job(%s) to '0049123456789' ended sucecessfully via bla:basic."%j.dbjob,)) + self.assertEqual(self.log.e[2]['message'], ("Job(%s) to '0049123456789' ended sucecessfully via bla:basic."%j.dbjob,)) with self.session() as session: u = session.merge(u) @@ -108,10 +109,13 @@ errors = self.flushLoggedErrors(SmstradeException) self.assertEqual(len(errors), 1) - self.assertEqual(self.log.e[0]['why'], "Error: Job(%s) to '0049123456789' failed."%j.dbjob) + errors = self.flushLoggedErrors(NoRouteForTask) + self.assertEqual(len(errors), 1) + self.assertEqual(self.log.e[1]['why'], "Job(%s): Send to '0049123456789' failed via 's'"%j.dbjob) + self.assertEqual(self.log.e[3]['why'], "Error: Job(%s) to '0049123456789' failed."%j.dbjob) self.assertEqual(t.error, True) - self.assertEqual(str(t.status.value),str(SmstradeException(StatusCode(703)))) + self.assertEqual(str(self.log.e[1]['failure'].value),str(SmstradeException(StatusCode(703)))) with self.session() as session: u = session.merge(u) @@ -142,7 +146,7 @@ t = Task("t@test.de",j) yield t.start() - self.assertEqual(self.log.e[0]['message'], ("Job(%s) to 't@test.de' ended sucecessfully via bla:None."%j.dbjob,)) + self.assertEqual(self.log.e[2]['message'], ("Job(%s) to 't@test.de' ended sucecessfully via bla:None."%j.dbjob,)) with self.session() as session: u = session.merge(u) @@ -175,12 +179,14 @@ t = Task("t@test.de",j) yield t.start() + errors = self.flushLoggedErrors(NoRouteForTask) + self.assertEqual(len(errors), 1) errors = self.flushLoggedErrors(IOError) self.assertEqual(len(errors), 1) - self.assertEqual(self.log.e[0]['why'], "Error: Job(%s) to 't@test.de' failed."%j.dbjob -) + self.assertEqual(self.log.e[1]['why'], "Job(%s): Send to 't@test.de' failed via 's'"%j.dbjob) + self.assertEqual(self.log.e[3]['why'], "Error: Job(%s) to 't@test.de' failed."%j.dbjob) self.assertEqual(t.error, True) - self.assertEqual(str(t.status.value),str(IOError(111,"Connection refused"))) + self.assertEqual(str(self.log.e[1]['failure'].value),str(IOError(111,"Connection refused"))) with self.session() as session: u = session.merge(u)