示例#1
0
 def test_run_periodic_tasks(self):
     #obj, created = PeriodicTaskMeta.objects.get_or_create(
     #                    name=MyPeriodicTask.name,
     #                    defaults={"last_run_at": datetime.now() -
     #                        timedelta(days=-4)})
     #if not created:
     #    obj.last_run_at = datetime.now() - timedelta(days=4)
     #    obj.save()
     b = Backend()
     b.run_periodic_tasks()
示例#2
0
    def test_backend(self):
        b = Backend()
        tid = str(uuid.uuid4())

        self.assertFalse(b.is_done(tid))
        self.assertEquals(b.get_status(tid), "PENDING")
        self.assertEquals(b.get_result(tid), "")

        b.mark_as_done(tid, 42)
        self.assertTrue(b.is_done(tid))
        self.assertEquals(b.get_status(tid), "DONE")
        self.assertEquals(b.get_result(tid), 42)
        self.assertTrue(b._cache.get(tid))
        self.assertTrue(b.get_result(tid), 42)

        tid2 = str(uuid.uuid4())
        result = {"foo": "baz", "bar": SomeClass(12345)}
        b.mark_as_done(tid2, result)
        # is serialized properly.
        rindb = b.get_result(tid2)
        self.assertEquals(rindb.get("foo"), "baz")
        self.assertEquals(rindb.get("bar").data, 12345)

        tid3 = str(uuid.uuid4())
        try:
            raise KeyError("foo")
        except KeyError, exception:
            pass