Skip to content

Commit

Permalink
replace config object with attributes
Browse files Browse the repository at this point in the history
  • Loading branch information
ahdamin committed Sep 2, 2024
1 parent ecebb1d commit f4eb0ac
Show file tree
Hide file tree
Showing 4 changed files with 17 additions and 12 deletions.
6 changes: 3 additions & 3 deletions cg/clients/freshdesk/freshdesk_client.py
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
6 changes: 3 additions & 3 deletions cg/meta/orders/ticket_handler.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ class TicketHandler:

NEW_LINE = "<br />"

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:
Expand Down
11 changes: 9 additions & 2 deletions cg/server/ext.py
Original file line number Diff line number Diff line change
Expand Up @@ -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,
)
6 changes: 2 additions & 4 deletions tests/meta/orders/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -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")
Expand All @@ -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
Expand Down

0 comments on commit f4eb0ac

Please sign in to comment.