diff --git a/apps/api/plane/settings/common.py b/apps/api/plane/settings/common.py index be444794f24..52f88205ec3 100644 --- a/apps/api/plane/settings/common.py +++ b/apps/api/plane/settings/common.py @@ -348,6 +348,9 @@ # issue version tasks "plane.bgtasks.issue_version_sync", "plane.bgtasks.issue_description_version_sync", + # background tasks + "plane.bgtasks.logger_task", + "plane.bgtasks.webhook_task", ) FILE_SIZE_LIMIT = int(os.environ.get("FILE_SIZE_LIMIT", 5242880)) diff --git a/apps/api/plane/tests/unit/settings/test_celery_imports.py b/apps/api/plane/tests/unit/settings/test_celery_imports.py new file mode 100644 index 00000000000..3e3efae85f4 --- /dev/null +++ b/apps/api/plane/tests/unit/settings/test_celery_imports.py @@ -0,0 +1,25 @@ +# Copyright (c) 2023-present Plane Software, Inc. and contributors +# SPDX-License-Identifier: AGPL-3.0-only +# See the LICENSE file for details. + +""" +Unit tests for Celery task imports configuration. +""" + +import pytest +from django.conf import settings +from celery import current_app + + +@pytest.mark.unit +class TestCeleryImports: + def test_celery_imports_contains_logger_and_webhook_tasks(self): + assert "plane.bgtasks.logger_task" in settings.CELERY_IMPORTS + assert "plane.bgtasks.webhook_task" in settings.CELERY_IMPORTS + + def test_logger_and_webhook_tasks_are_registered(self): + # Force celery to import registered modules + current_app.loader.import_default_modules() + + assert "plane.bgtasks.logger_task.process_logs" in current_app.tasks + assert "plane.bgtasks.webhook_task.webhook_send_task" in current_app.tasks