Esempio n. 1
0
    def test_basicWork(self):
        """
        Verify that an L{TestWork} item can be enqueued and executed.
        """

        # do FindMinValidRevisionWork
        yield TestWork.schedule(self.storeUnderTest(), 0, 1, 2, 3)

        work = yield TestWork.all(self.transactionUnderTest())
        self.assertEqual(len(work), 1)
        self.assertEqual(work[0].delay, 3)
        job = yield JobItem.querysimple(self.transactionUnderTest(), jobID=work[0].jobID)
        self.assertEqual(len(job), 1)
        self.assertEqual(job[0].priority, 1)
        self.assertEqual(job[0].weight, 2)
        yield self.commit()

        yield JobItem.waitEmpty(self.storeUnderTest().newTransaction, reactor, 60)
Esempio n. 2
0
    def test_basicWork(self):
        """
        Verify that an L{TestWork} item can be enqueued and executed.
        """

        # do FindMinValidRevisionWork
        yield TestWork.schedule(self.storeUnderTest(), 0, 1, 2, 3)

        work = yield TestWork.all(self.transactionUnderTest())
        self.assertEqual(len(work), 1)
        self.assertEqual(work[0].delay, 3)
        job = yield JobItem.querysimple(self.transactionUnderTest(),
                                        jobID=work[0].jobID)
        self.assertEqual(len(job), 1)
        self.assertEqual(job[0].priority, 1)
        self.assertEqual(job[0].weight, 2)
        yield self.commit()

        yield JobItem.waitEmpty(self.storeUnderTest().newTransaction, reactor,
                                60)
Esempio n. 3
0
    def action_testwork(self, j):
        """
        Wait for all schedule queue items to complete.
        """

        try:
            when = j["when"]
        except KeyError:
            when = 0
        try:
            priority = j["priority"]
        except KeyError:
            priority = WORK_PRIORITY_HIGH
        try:
            weight = j["weight"]
        except KeyError:
            weight = WORK_WEIGHT_1
        try:
            delay = j["delay"]
        except KeyError:
            delay = 0
        try:
            jobs = j["jobs"]
        except KeyError:
            jobs = 1

        start_time = time.time()
        for _ in range(jobs):
            effective_when = max(when - (time.time() - start_time), 0)
            yield TestWork.schedule(
                self._store,
                effective_when,
                priority,
                weight,
                delay,
            )

        returnValue(self._ok("ok", "Test work scheduled"))
Esempio n. 4
0
    def action_testwork(self, j):
        """
        Wait for all schedule queue items to complete.
        """

        try:
            when = j["when"]
        except KeyError:
            when = 0
        try:
            priority = j["priority"]
        except KeyError:
            priority = WORK_PRIORITY_HIGH
        try:
            weight = j["weight"]
        except KeyError:
            weight = WORK_WEIGHT_1
        try:
            delay = j["delay"]
        except KeyError:
            delay = 0
        try:
            jobs = j["jobs"]
        except KeyError:
            jobs = 1

        for _ in range(jobs):
            yield TestWork.schedule(
                self._store,
                when,
                priority,
                weight,
                delay,
            )

        returnValue(self._ok("ok", "Test work scheduled"))