# HG changeset patch # User Sandro Knauß # Date 1286489018 -7200 # Node ID 32763e344d3b13c922335edff2db625909974b37 # Parent a0eac136eb20b83ca0ebfdee3379b63a1709e40e job nun mit start(id), status() gibt list zurück, tests angepasst diff -r a0eac136eb20 -r 32763e344d3b iro/job.py --- a/iro/job.py Wed Oct 06 04:54:25 2010 +0200 +++ b/iro/job.py Fri Oct 08 00:03:38 2010 +0200 @@ -26,7 +26,8 @@ self.dStatus={"good":[], "failed":[]} self.id=None - def start(self): + def start(self,id=None): + self.id=id self.status = "started" def stop(self): @@ -73,8 +74,7 @@ pass def start(self, id=None): - self.id=id - Job.start(self) + Job.start(self,id) self.getProvider().setJob(self) self.message.sendto(self.getProvider(), self.recipients) self.status="sended" diff -r a0eac136eb20 -r 32763e344d3b iro/tests/testWorker.py --- a/iro/tests/testWorker.py Wed Oct 06 04:54:25 2010 +0200 +++ b/iro/tests/testWorker.py Fri Oct 08 00:03:38 2010 +0200 @@ -34,8 +34,8 @@ class BadJob(Job): - def start(self): - Job.start(self) + def start(self,id=None): + Job.start(self,id) raise Exception("Error") #einen Manager anlegen, der Job und eine Liste anbietet @@ -97,11 +97,11 @@ def testJob(self): '''einen Job verarbeiten''' job=self.manager.Job(None,None,"test") - self.assertEqual(job.getStatus(),"init") + self.assertEqual(job.getStatus(),("init",{})) self.queue.put(job) sleep(.1) self.stop() - self.assertEqual(job.getStatus(),"started") + self.assertEqual(job.getStatus(),("started",{})) self.assertEqual([(l['levelno'],l['msg']) for l in self.buffer if l['name']=="iro.worker"], [(20,'Workerprocess läuft nun...'), (20,'ein neuer Job(1)'), @@ -110,11 +110,11 @@ def testBadJob(self): '''einen Job verarbeiten, der fehlschlägt''' job=self.manager.BadJob(None,None,"test") - self.assertEqual(job.getStatus(),"init") + self.assertEqual(job.getStatus(),("init",{})) self.queue.put(job) sleep(.1) self.stop() - self.assertEqual(job.getStatus(),"error") + self.assertEqual(job.getStatus(),("error",{})) print self.buffer self.assertEqual([(l['levelno'],l['msg']) for l in self.buffer if l['name']=="iro.worker"], [(20,'Workerprocess läuft nun...'), diff -r a0eac136eb20 -r 32763e344d3b iro/tests/testXMLRPCServer.py --- a/iro/tests/testXMLRPCServer.py Wed Oct 06 04:54:25 2010 +0200 +++ b/iro/tests/testXMLRPCServer.py Fri Oct 08 00:03:38 2010 +0200 @@ -125,7 +125,7 @@ servstr="https://test:test@localhost:8000" client=xmlrpclib.Server(servstr) id=client.startSMS("test",["01234", ] ) - self.assertEqual(client.status(id),{id: {'status': 'init', 'name': 'test'}} ) + self.assertEqual(client.status(id),{id: {'status': ['init',{}], 'name': 'test'}} ) def testTwoUser(self): u1="https://test:test@localhost:8000" @@ -136,13 +136,13 @@ admin=xmlrpclib.Server(admin) id1=client1.startSMS("test",["01234"] ) self.assertEqual(client2.status(),{} ) - self.assertEqual(admin.status(id1),{id1: {'status': 'init', 'name': 'test'}} ) + self.assertEqual(admin.status(id1),{id1: {'status': ['init', {}], 'name': 'test'}} ) id2=client2.startSMS("test2",["01234"] ) self.assertNotEqual(id1, id2) - self.assertEqual(client1.status(),{id1: {'status': 'init', 'name': 'test'}}) - self.assertEqual(client2.status(),{id2: {'status': 'init', 'name': 'test2'}}) - self.assertEqual(admin.status(),{id1: {'status': 'init', 'name': 'test'}, - id2: {'status': 'init', 'name': 'test2'}} ) + self.assertEqual(client1.status(),{id1: {'status': ['init', {}], 'name': 'test'}}) + self.assertEqual(client2.status(),{id2: {'status': ['init', {}], 'name': 'test2'}}) + self.assertEqual(admin.status(),{id1: {'status': ['init', {}], 'name': 'test'}, + id2: {'status': ['init', {}], 'name': 'test2'}} ) self.assertEqual(client2.status(id1), {}) self.assertEqual(client1.status(id2), {}) diff -r a0eac136eb20 -r 32763e344d3b iro/worker.py --- a/iro/worker.py Wed Oct 06 04:54:25 2010 +0200 +++ b/iro/worker.py Fri Oct 08 00:03:38 2010 +0200 @@ -20,7 +20,7 @@ id+=1 logger.info('ein neuer Job(%d)' %(id)) try: - job.start() + job.start(id) logger.info('Job(%d) fertig ;)'%(id)) except: job.setStatus("error")