diff --git a/cg/clients/freshdesk/freshdesk_client.py b/cg/clients/freshdesk/freshdesk_client.py index 16f2ec427d..9a9650f9b1 100644 --- a/cg/clients/freshdesk/freshdesk_client.py +++ b/cg/clients/freshdesk/freshdesk_client.py @@ -13,9 +13,9 @@ class FreshdeskClient: """Client for communicating with the freshdesk REST API.""" - def __init__(self, config: dict): - self.base_url = config["freshdesk_url"] - self.api_key = config["freshdesk_api_key"] + def __init__(self, base_url: str, api_key: str): + self.base_url = base_url + self.api_key = api_key self.session = self._get_session() @handle_client_errors diff --git a/cg/meta/orders/ticket_handler.py b/cg/meta/orders/ticket_handler.py index 42cf704e4c..2b4d1be5ea 100644 --- a/cg/meta/orders/ticket_handler.py +++ b/cg/meta/orders/ticket_handler.py @@ -19,11 +19,11 @@ class TicketHandler: NEW_LINE = "
" - def __init__(self, config: dict, db: Store, client: FreshdeskClient): + def __init__(self, db: Store, client: FreshdeskClient, system_email_id: int, env: str): self.client: FreshdeskClient = client self.status_db: Store = db - self.system_email_id: int = config["freshdesk_order_email_id"] - self.env: str = config["freshdesk_environment"] + self.system_email_id: int = system_email_id + self.env: str = env @staticmethod def parse_ticket_number(name: str) -> str | None: diff --git a/cg/server/ext.py b/cg/server/ext.py index e7ae8ef0a5..c8cfda6286 100644 --- a/cg/server/ext.py +++ b/cg/server/ext.py @@ -96,5 +96,12 @@ def init_app(self, app): lims=lims, status_db=db, ) -freshdesk_client = FreshdeskClient(app_config.model_dump()) -ticket_handler = TicketHandler(config=app_config.model_dump(), db=db, client=freshdesk_client) +freshdesk_client = FreshdeskClient( + base_url=app_config.freshdesk_url, api_key=app_config.freshdesk_api_key +) +ticket_handler = TicketHandler( + db=db, + client=freshdesk_client, + system_email_id=app_config.freshdesk_order_email_id, + env=app_config.freshdesk_environment, +) diff --git a/tests/meta/orders/conftest.py b/tests/meta/orders/conftest.py index 6f293fea64..5857e67a8a 100644 --- a/tests/meta/orders/conftest.py +++ b/tests/meta/orders/conftest.py @@ -15,8 +15,7 @@ @pytest.fixture def freshdesk_client(): - config = {"freshdesk_url": "https://example.com", "freshdesk_api_key": "dummy_api_key"} - return FreshdeskClient(config=config) + return FreshdeskClient(base_url="https://mock.freshdesk.com", api_key="mock_api_key") @pytest.fixture(scope="function") @@ -36,8 +35,7 @@ def orders_api( @pytest.fixture def ticket_handler(store: Store, freshdesk_client: FreshdeskClient) -> TicketHandler: - config = {"freshdesk_order_email_id": 12345, "freshdesk_environment": "production"} - return TicketHandler(config=config, db=store, client=freshdesk_client) + return TicketHandler(db=store, client=freshdesk_client, system_email_id=12345, env="production") @pytest.fixture