示例#1
0
    def test_basic_processing(self):
        # make sure UserCommand got registered
        self.assertTrue("djutils.tests.queue.UserCommand" in registry)
        self.assertEqual(registry._registry["djutils.tests.queue.UserCommand"], UserCommand)

        # create a command
        command = UserCommand((self.dummy, self.dummy.email, "*****@*****.**"))

        # enqueueing the command won't execute it - it just hangs out
        invoker.enqueue(command)

        # did the message get enqueued?
        self.assertEqual(len(invoker.queue), 1)

        # dequeueing loads from the queue, creates a command and executes it
        invoker.dequeue()

        # make sure the command's execute() method got called
        dummy = User.objects.get(username="******")
        self.assertEqual(dummy.email, "*****@*****.**")
示例#2
0
    def test_periodic_command_registration(self):
        # make sure TestPeriodicCommand got registered
        self.assertTrue("djutils.tests.queue.TestPeriodicCommand" in registry)
        self.assertEqual(registry._registry["djutils.tests.queue.TestPeriodicCommand"], TestPeriodicCommand)

        # create a command
        command = TestPeriodicCommand()

        # enqueueing the command won't execute it - it just hangs out
        invoker.enqueue(command)

        # check that there are no users in the db
        self.assertEqual(User.objects.all().count(), 1)

        # did the message get enqueued?
        self.assertEqual(len(invoker.queue), 1)

        # dequeueing loads from the queue, creates a command and executes it
        invoker.dequeue()

        # a new user should have been added
        self.assertEqual(User.objects.all().count(), 2)
示例#3
0
 def inner_run(*args, **kwargs):
     invoker.enqueue(klass((args, kwargs)))