-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
59 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
from .app import ICIJApp | ||
from .task import Task, TaskError, TaskEvent, TaskResult, TaskStatus | ||
from .worker import Worker, Neo4jAsyncWorker | ||
from .worker import Worker, Neo4jAsyncWorker, WorkerConfig | ||
from .event_publisher import EventPublisher, Neo4jEventPublisher |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,4 @@ | ||
from .worker import Worker | ||
from .neo4j import Neo4jAsyncWorker | ||
from .config import WorkerConfig | ||
from .process import ProcessWorkerMixin |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
from abc import ABC | ||
|
||
from pydantic import Field | ||
|
||
from neo4j_app.icij_worker.utils.registrable import RegistrableConfig | ||
|
||
|
||
class WorkerConfig(RegistrableConfig, ABC): | ||
registry_key: str = Field(const=True, default="type") | ||
log_level: str = "INFO" | ||
type: str | ||
|
||
class Config: | ||
env_prefix = "ICIJ_WORKER_" | ||
case_sensitive = False |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
31 changes: 31 additions & 0 deletions
31
neo4j-app/neo4j_app/tests/icij_worker/worker/test_config.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# pylint: disable=redefined-outer-name | ||
import os | ||
from typing import Optional | ||
|
||
import pytest | ||
|
||
from neo4j_app.icij_worker import WorkerConfig | ||
|
||
|
||
@pytest.fixture() | ||
def env_log_level(reset_env, request): # pylint: disable=unused-argument | ||
log_level = request.param | ||
if log_level is not None: | ||
os.environ["ICIJ_WORKER_LOG_LEVEL"] = log_level | ||
|
||
|
||
@pytest.mark.parametrize( | ||
"env_log_level,expected_level", | ||
[(None, "INFO"), ("DEBUG", "DEBUG"), ("INFO", "INFO")], | ||
indirect=["env_log_level"], | ||
) | ||
def test_config_from_env( | ||
env_log_level: Optional[str], expected_level: str # pylint: disable=unused-argument | ||
): | ||
# When | ||
class WorkerImplConfig(WorkerConfig): | ||
type: str = "worker_impl" | ||
|
||
config = WorkerImplConfig() | ||
# Then | ||
assert config.log_level == expected_level |