From 0d79d1e67dd9df0d49fef5d67cc6aa9b20aa2861 Mon Sep 17 00:00:00 2001 From: Sebastian Allard Date: Mon, 11 Dec 2023 09:36:39 +0100 Subject: [PATCH] Fix imports --- cg/meta/workflow/microsalt/__init__.py | 2 ++ cg/meta/workflow/{ => microsalt}/microsalt.py | 0 cg/meta/workflow/microsalt/quality_checker.py | 4 ++-- tests/meta/workflow/test_microsalt.py | 18 +++++++++--------- 4 files changed, 13 insertions(+), 11 deletions(-) rename cg/meta/workflow/{ => microsalt}/microsalt.py (100%) diff --git a/cg/meta/workflow/microsalt/__init__.py b/cg/meta/workflow/microsalt/__init__.py index e69de29bb2..8129c1a0c2 100644 --- a/cg/meta/workflow/microsalt/__init__.py +++ b/cg/meta/workflow/microsalt/__init__.py @@ -0,0 +1,2 @@ +from .microsalt import MicrosaltAnalysisAPI +from .quality_checker import QualityChecker \ No newline at end of file diff --git a/cg/meta/workflow/microsalt.py b/cg/meta/workflow/microsalt/microsalt.py similarity index 100% rename from cg/meta/workflow/microsalt.py rename to cg/meta/workflow/microsalt/microsalt.py diff --git a/cg/meta/workflow/microsalt/quality_checker.py b/cg/meta/workflow/microsalt/quality_checker.py index 8c77b19229..13cf72049c 100644 --- a/cg/meta/workflow/microsalt/quality_checker.py +++ b/cg/meta/workflow/microsalt/quality_checker.py @@ -5,13 +5,14 @@ from cg.constants.constants import MicrosaltAppTags, MicrosaltQC from cg.models.orders.sample_base import ControlEnum +from cg.store.api.core import Store from cg.store.models import Sample LOG = logging.getLogger(__name__) class QualityChecker: - def __init__(self, status_db): + def __init__(self, status_db: Store): self.status_db = status_db def microsalt_qc(self, case_id: str, run_dir_path: Path, lims_project: str) -> bool: @@ -106,7 +107,6 @@ def check_external_negative_control_sample(self, sample: Sample) -> bool: * MicrosaltQC.NEGATIVE_CONTROL_READS_THRESHOLD ) - def is_qc_required(self, case_run_dir: Path | None, case_id: str) -> bool: """Checks if a qc is required for a microbial case.""" if case_run_dir is None: diff --git a/tests/meta/workflow/test_microsalt.py b/tests/meta/workflow/test_microsalt.py index 1acdcf1067..fa2bcb384b 100644 --- a/tests/meta/workflow/test_microsalt.py +++ b/tests/meta/workflow/test_microsalt.py @@ -6,7 +6,7 @@ from cg.apps.tb.api import TrailblazerAPI from cg.constants.constants import CaseActions, Pipeline -from cg.meta.workflow.microsalt import MicrosaltAnalysisAPI +from cg.meta.workflow.microsalt import MicrosaltAnalysisAPI, QualityChecker from cg.models.cg_config import CGConfig from cg.models.orders.sample_base import ControlEnum from cg.store import Store @@ -33,10 +33,10 @@ def test_qc_check_fail( for index in range(4): microsalt_case.samples[index].reads = 1000 - mocker.patch.object(MicrosaltAnalysisAPI, "create_qc_done_file") + mocker.patch.object(QualityChecker, "create_qc_done_file") # WHEN performing QC check - qc_pass: bool = microsalt_api.microsalt_qc( + qc_pass: bool = microsalt_api.quality_checker.microsalt_qc( case_id=microsalt_case_qc_fail, run_dir_path=microsalt_qc_fail_run_dir_path, lims_project=microsalt_qc_fail_lims_project, @@ -65,10 +65,10 @@ def test_qc_check_pass( microsalt_case.samples[1].control = ControlEnum.negative microsalt_case.samples[1].reads = 1100000 - mocker.patch.object(MicrosaltAnalysisAPI, "create_qc_done_file") + mocker.patch.object(QualityChecker, "create_qc_done_file") # WHEN performing QC check - qc_pass: bool = microsalt_api.microsalt_qc( + qc_pass: bool = microsalt_api.quality_checker.microsalt_qc( case_id=microsalt_case_qc_pass, run_dir_path=microsalt_qc_pass_run_dir_path, lims_project=microsalt_qc_pass_lims_project, @@ -97,10 +97,10 @@ def test_qc_check_negative_control_fail( microsalt_case: Case = store.get_case_by_internal_id(internal_id=microsalt_case_qc_fail) microsalt_case.samples[0].control = ControlEnum.negative - mocker.patch.object(MicrosaltAnalysisAPI, "create_qc_done_file") + mocker.patch.object(QualityChecker, "create_qc_done_file") # WHEN performing QC check - qc_pass: bool = microsalt_api.microsalt_qc( + qc_pass: bool = microsalt_api.quality_checker.microsalt_qc( case_id=microsalt_case_qc_fail, run_dir_path=microsalt_qc_fail_run_dir_path, lims_project=microsalt_qc_fail_lims_project, @@ -175,7 +175,7 @@ def test_get_cases_to_store_pass( caplog.set_level(logging.INFO) store = qc_microsalt_context.status_db microsalt_api: MicrosaltAnalysisAPI = qc_microsalt_context.meta_apis["analysis_api"] - mocker.patch.object(MicrosaltAnalysisAPI, "create_qc_done_file") + mocker.patch.object(QualityChecker, "create_qc_done_file") mocker.patch.object(TrailblazerAPI, "set_analysis_status") mocker.patch.object(TrailblazerAPI, "add_comment") @@ -217,7 +217,7 @@ def test_get_cases_to_store_fail( caplog.set_level(logging.INFO) store = qc_microsalt_context.status_db microsalt_api: MicrosaltAnalysisAPI = qc_microsalt_context.meta_apis["analysis_api"] - mocker.patch.object(MicrosaltAnalysisAPI, "create_qc_done_file") + mocker.patch.object(QualityChecker, "create_qc_done_file") mocker.patch.object(TrailblazerAPI, "set_analysis_status") mocker.patch.object(TrailblazerAPI, "add_comment")