From 16e8c1e8e337050a02180067060ee5476bca6f60 Mon Sep 17 00:00:00 2001 From: Mikhail Epifanov Date: Mon, 5 Feb 2024 23:59:40 +0100 Subject: [PATCH] disable connector in tests --- cookbook/connectors/connector_manager.py | 5 +++-- pytest.ini | 4 +++- requirements.txt | 1 + 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cookbook/connectors/connector_manager.py b/cookbook/connectors/connector_manager.py index 132bc56e4..60a0d5e2b 100644 --- a/cookbook/connectors/connector_manager.py +++ b/cookbook/connectors/connector_manager.py @@ -2,7 +2,6 @@ import asyncio import logging import multiprocessing import queue -import weakref from asyncio import Task from dataclasses import dataclass from enum import Enum @@ -50,7 +49,6 @@ class ConnectorManager: self._queue = multiprocessing.JoinableQueue(maxsize=settings.EXTERNAL_CONNECTORS_QUEUE_SIZE) self._worker = multiprocessing.Process(target=self.worker, args=(0, self._queue,), daemon=True) self._worker.start() - self._finalizer = weakref.finalize(self, self.stop) # Called by post save & post delete signals def __call__(self, instance: Any, **kwargs) -> None: @@ -138,6 +136,9 @@ class ConnectorManager: logging.info(f"terminating ConnectionManager worker {worker_id}") + asyncio.set_event_loop(None) + loop.close() + @staticmethod def get_connected_for_config(config: ConnectorConfig) -> Optional[Connector]: match config.type: diff --git a/pytest.ini b/pytest.ini index d766a8425..3738a6c87 100644 --- a/pytest.ini +++ b/pytest.ini @@ -1,3 +1,5 @@ [pytest] DJANGO_SETTINGS_MODULE = recipes.settings -python_files = tests.py test_*.py *_tests.py \ No newline at end of file +python_files = tests.py test_*.py *_tests.py +env = + DISABLE_EXTERNAL_CONNECTORS = 1 \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 7f08008af..a9d1029b2 100644 --- a/requirements.txt +++ b/requirements.txt @@ -36,6 +36,7 @@ django-scopes==2.0.0 pytest==7.4.3 pytest-asyncio==0.23.3 pytest-django==4.6.0 +pytest-env==1.1.3 django-treebeard==4.7 django-cors-headers==4.2.0 django-storages==1.14.2