コード例 #1
0
    def test_process_hold_queue(self):
        bucket_queue = Queue()
        hold_queue = Queue()
        m = PeriodicWorkController(bucket_queue, hold_queue)
        m.process_hold_queue()

        scratchpad = {}

        def on_accept():
            scratchpad["accepted"] = True

        hold_queue.put((MockTask("task1"),
                        datetime.now() - timedelta(days=1),
                        on_accept))

        m.process_hold_queue()
        self.assertRaises(Empty, hold_queue.get_nowait)
        self.assertTrue(scratchpad.get("accepted"))
        self.assertEquals(bucket_queue.get_nowait().value, "task1")
        tomorrow = datetime.now() + timedelta(days=1)
        hold_queue.put((MockTask("task2"), tomorrow, on_accept))
        m.process_hold_queue()
        self.assertRaises(Empty, bucket_queue.get_nowait)
        value, eta, on_accept = hold_queue.get_nowait()
        self.assertEquals(value.value, "task2")
        self.assertEquals(eta, tomorrow)
コード例 #2
0
    def test_process_hold_queue(self):
        bucket_queue = Queue()
        hold_queue = Queue()
        m = PeriodicWorkController(bucket_queue, hold_queue)

        m.process_hold_queue()

        hold_queue.put(("task1", datetime.now() - timedelta(days=1)))

        m.process_hold_queue()
        self.assertRaises(Empty, hold_queue.get_nowait)
        self.assertEquals(bucket_queue.get_nowait(), "task1")
        tomorrow = datetime.now() + timedelta(days=1)
        hold_queue.put(("task2", tomorrow))
        m.process_hold_queue()
        self.assertRaises(Empty, bucket_queue.get_nowait)
        self.assertEquals(hold_queue.get_nowait(), ("task2", tomorrow))
コード例 #3
0
 def test_on_iteration(self):
     bucket_queue = Queue()
     hold_queue = Queue()
     m = PeriodicWorkController(bucket_queue, hold_queue)
     m.on_iteration()
コード例 #4
0
 def test_run_periodic_tasks(self):
     bucket_queue = Queue()
     hold_queue = Queue()
     m = PeriodicWorkController(bucket_queue, hold_queue)
     m.run_periodic_tasks()