Beispiel #1
0
    def test_djangohuey_get_queue_when_queue_is_none(self):
        DJANGO_HUEY = {
            "queues": {
                "queuename": {
                    "name": "test",
                    "immediate": True,
                }
            }
        }
        config = DjangoHueySettingsReader(DJANGO_HUEY)

        config.configure()

        with self.assertRaises(ConfigurationError) as cm:
            config.get_queue(None)

        self.assertEqual(
            """
Command djangohuey must receive a --queue parameter or define a default queue in DJANGO_HUEY setting.
i.e.:
python manage.py djangohuey --queue first

or in settings file:

DJANGO_HUEY = {
    'default': 'your-default-queue-name',
    'queues': {
        #Your queues here
    }
}
""",
            str(cm.exception),
        )
Beispiel #2
0
    def test_djangohuey_configure_when_django_huey_setting_is_defined(
            self, *args):
        DJANGO_HUEY = {
            "queues": {
                "first": {
                    "huey_class":
                    "huey.RedisHuey",  # Huey implementation to use.
                    "name": "testname",  # Use db name for huey.
                },
                "mails": {
                    "huey_class":
                    "huey.MemoryHuey",  # Huey implementation to use.
                    "name": "testnamememory",  # Use db name for huey.
                },
            }
        }

        config = DjangoHueySettingsReader(DJANGO_HUEY)

        config.configure()

        self.assertTrue(isinstance(config.get_queue("first"), RedisHuey))
        self.assertEqual(config.get_queue("first").name, "testname")
        self.assertTrue(isinstance(config.get_queue("mails"), MemoryHuey))
        self.assertEqual(config.get_queue("mails").name, "testnamememory")
Beispiel #3
0
    def test_djangohuey_if_name_is_not_defined_queue_name_is_default(
            self, *args):
        DJANGO_HUEY = {
            "queues": {
                "first": {
                    "huey_class":
                    "huey.RedisHuey",  # Huey implementation to use.
                },
                "mails": {
                    "huey_class":
                    "huey.MemoryHuey",  # Huey implementation to use.
                },
            }
        }

        config = DjangoHueySettingsReader(DJANGO_HUEY)

        config.configure()
        self.assertEqual(config.get_queue("first").name, "first")

        self.assertEqual(config.get_queue("mails").name, "mails")
Beispiel #4
0
    def test_djangohuey_with_backend_class(self, *args):
        DJANGO_HUEY = {
            "queues": {
                "first": {
                    "backend_class": "huey.RedisHuey",
                }
            }
        }

        config = DjangoHueySettingsReader(DJANGO_HUEY)

        config.configure()
        self.assertTrue(isinstance(config.get_queue("first"), RedisHuey))
Beispiel #5
0
    def test_djangohuey_get_queue_when_queue_is_included_from_module(self):
        DJANGO_HUEY = {
            "queues": {
                **include("tests.queuesvalid"),
                "mails": {
                    "huey_class": "huey.MemoryHuey",
                    "name": "first",
                },
            },
        }
        config = DjangoHueySettingsReader(DJANGO_HUEY)

        config.configure()
        queue = config.get_queue("test")

        self.assertEqual(queue.name, "test")
Beispiel #6
0
    def test_djangohuey_get_queue_when_queue_is_none_and_default_queue_is_defined(
            self):
        DJANGO_HUEY = {
            "default": "queuename",
            "queues": {
                "queuename": {
                    "name": "queue-default",
                    "immediate": True,
                }
            },
        }
        config = DjangoHueySettingsReader(DJANGO_HUEY)

        config.configure()

        queue = config.get_queue(None)

        self.assertEqual(queue.name, "queue-default")