From 8a2a7d7cabc39e4f220b229ed9504ed9c5abf089 Mon Sep 17 00:00:00 2001 From: Andre Anjos <andre.dos.anjos@gmail.com> Date: Tue, 28 Feb 2023 08:49:10 -0300 Subject: [PATCH] [tests] Simplifies test database unpacking by moving code to a pytest initializer; Make tests more unaware of the test database --- src/ptbench/data/montgomery/__init__.py | 1 - tests/conftest.py | 80 +++++------ tests/test_ch_RS.py | 6 +- tests/test_cli.py | 15 ++ tests/test_config.py | 5 + tests/test_data_utils.py | 4 +- tests/test_hivtb_RS.py | 6 +- tests/test_in.py | 8 +- tests/test_mc.py | 8 +- tests/test_mc_RS.py | 7 +- tests/test_mc_ch.py | 134 +++++++++--------- tests/test_mc_ch_RS.py | 68 ++++----- tests/test_mc_ch_in.py | 177 ++++++++++++------------ tests/test_mc_ch_in_RS.py | 90 ++++++------ tests/test_mc_ch_in_pc.py | 18 +-- tests/test_mc_ch_in_pc_RS.py | 12 +- tests/test_nih_cxr14.py | 6 +- tests/test_nih_cxr14_pc.py | 12 +- tests/test_pc.py | 6 +- tests/test_pc_RS.py | 6 +- 20 files changed, 341 insertions(+), 328 deletions(-) diff --git a/src/ptbench/data/montgomery/__init__.py b/src/ptbench/data/montgomery/__init__.py index 719941f9..38b50a26 100644 --- a/src/ptbench/data/montgomery/__init__.py +++ b/src/ptbench/data/montgomery/__init__.py @@ -2,7 +2,6 @@ # # SPDX-License-Identifier: GPL-3.0-or-later - """Montgomery dataset for computer-aided diagnosis. The Montgomery database has been established to foster research diff --git a/tests/conftest.py b/tests/conftest.py index 86a852b5..837a34f4 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -4,7 +4,8 @@ import os import pathlib -import typing +import tempfile +import zipfile import pytest import tomli_w @@ -70,16 +71,10 @@ def temporary_basedir(tmp_path_factory): return tmp_path_factory.mktemp("test-cli") -@pytest.fixture(scope="session", autouse=True) -def ensure_montgomery( - tmp_path_factory, -) -> typing.Generator[None, None, None]: - """A pytest fixture that ensures that datadir.montgomery is always +def pytest_sessionstart(session: pytest.Session) -> None: + """Presets the session start to ensure the Montgomery dataset is always available.""" - import tempfile - import zipfile - from ptbench.utils.rc import load_rc rc = load_rc() @@ -87,39 +82,34 @@ def ensure_montgomery( database_dir = rc.get("datadir.montgomery") if database_dir is not None: # if the user downloaded it, use that copy - yield - - else: - # else, we must extract the LFS component (we are likely on the CI) - archive = ( - pathlib.Path(__file__).parents[0] - / "data" - / "lfs" - / "test-database.zip" - ) - assert archive.exists(), ( - f"Neither datadir.montgomery is set on the global configuration, " - f"(typically ~/.config/ptbench.toml), or it is possible to detect " - f"the presence of {archive}' (did you git submodule init --update " - f"this submodule?)" - ) - - database_dir = tmp_path_factory.mktemp("montgomery_datadir") - rc.setdefault("datadir.montgomery", str(database_dir)) - - with zipfile.ZipFile(archive) as zf: - zf.extractall(database_dir) - - with tempfile.TemporaryDirectory() as tmpdir: - config_filename = "ptbench.toml" - with open(os.path.join(tmpdir, config_filename), "wb") as f: - tomli_w.dump(rc.data, f) - f.flush() - - old_config_home = os.environ.get("XDG_CONFIG_HOME") - os.environ["XDG_CONFIG_HOME"] = tmpdir - yield - if old_config_home is None: - del os.environ["XDG_CONFIG_HOME"] - else: - os.environ["XDG_CONFIG_HOME"] = old_config_home + return + + # else, we must extract the LFS component (we are likely on the CI) + archive = ( + pathlib.Path(__file__).parents[0] / "data" / "lfs" / "test-database.zip" + ) + assert archive.exists(), ( + f"Neither datadir.montgomery is set on the global configuration, " + f"(typically ~/.config/ptbench.toml), or it is possible to detect " + f"the presence of {archive}' (did you git submodule init --update " + f"this submodule?)" + ) + + montgomery_tempdir = tempfile.TemporaryDirectory() + rc.setdefault("datadir.montgomery", montgomery_tempdir.name) + + with zipfile.ZipFile(archive) as zf: + zf.extractall(montgomery_tempdir.name) + + config_filename = "ptbench.toml" + with open( + os.path.join(montgomery_tempdir.name, config_filename), "wb" + ) as f: + tomli_w.dump(rc.data, f) + f.flush() + + os.environ["XDG_CONFIG_HOME"] = montgomery_tempdir.name + + # stash the newly created temporary directory so we can erase it when the + key = pytest.StashKey[tempfile.TemporaryDirectory]() + session.stash[key] = montgomery_tempdir diff --git a/tests/test_ch_RS.py b/tests/test_ch_RS.py index 8e2fcd20..47a3aa8e 100644 --- a/tests/test_ch_RS.py +++ b/tests/test_ch_RS.py @@ -4,10 +4,10 @@ """Tests for Extended Shenzhen dataset.""" -from ptbench.data.shenzhen_RS import dataset - def test_protocol_consistency(): + from ptbench.data.shenzhen_RS import dataset + # Default protocol subset = dataset.subsets("default") assert len(subset) == 3 @@ -95,6 +95,8 @@ def test_protocol_consistency(): def test_loading(): + from ptbench.data.shenzhen_RS import dataset + def _check_sample(s): data = s.data diff --git a/tests/test_cli.py b/tests/test_cli.py index 3ed16d08..9c42d58e 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -8,6 +8,8 @@ import contextlib import os import re +import pytest + from click.testing import CliRunner @@ -78,6 +80,7 @@ def test_config_describe_help(): _check_help(describe) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_config_describe_montgomery(): from ptbench.scripts.config import describe @@ -114,6 +117,7 @@ def test_dataset_check_help(): _check_help(check) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_dataset_check(): from ptbench.scripts.dataset import check @@ -168,6 +172,7 @@ def test_compare_help(): _check_help(compare) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_train_pasa_montgomery(temporary_basedir): from ptbench.scripts.train import train @@ -221,6 +226,7 @@ def test_train_pasa_montgomery(temporary_basedir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_predict_pasa_montgomery(temporary_basedir, datadir): from ptbench.scripts.predict import predict @@ -268,6 +274,7 @@ def test_predict_pasa_montgomery(temporary_basedir, datadir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_predtojson(datadir, temporary_basedir): from ptbench.scripts.predtojson import predtojson @@ -308,6 +315,7 @@ def test_predtojson(datadir, temporary_basedir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_evaluate_pasa_montgomery(temporary_basedir): from ptbench.scripts.evaluate import evaluate @@ -357,6 +365,7 @@ def test_evaluate_pasa_montgomery(temporary_basedir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_compare_pasa_montgomery(temporary_basedir): from ptbench.scripts.compare import compare @@ -400,6 +409,7 @@ def test_compare_pasa_montgomery(temporary_basedir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_train_signstotb_montgomery_rs(temporary_basedir, datadir): from ptbench.scripts.train import train @@ -452,6 +462,7 @@ def test_train_signstotb_montgomery_rs(temporary_basedir, datadir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_predict_signstotb_montgomery_rs(temporary_basedir, datadir): from ptbench.scripts.predict import predict @@ -500,6 +511,7 @@ def test_predict_signstotb_montgomery_rs(temporary_basedir, datadir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_train_logreg_montgomery_rs(temporary_basedir, datadir): from ptbench.scripts.train import train @@ -552,6 +564,7 @@ def test_train_logreg_montgomery_rs(temporary_basedir, datadir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_predict_logreg_montgomery_rs(temporary_basedir, datadir): from ptbench.scripts.predict import predict @@ -594,6 +607,7 @@ def test_predict_logreg_montgomery_rs(temporary_basedir, datadir): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_aggregpred(temporary_basedir): from ptbench.scripts.aggregpred import aggregpred @@ -635,6 +649,7 @@ def test_aggregpred(temporary_basedir): # Not enough RAM available to do this test +# @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") # def test_predict_densenetrs_montgomery(temporary_basedir, datadir): # from ptbench.scripts.predict import predict diff --git a/tests/test_config.py b/tests/test_config.py index 91f52a5a..df5c7ab5 100644 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -16,6 +16,7 @@ from ptbench.configs.datasets import get_positive_weights, get_samples_weights N = 10 +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_montgomery(): def _check_subset(samples, size): assert len(samples) == size @@ -38,6 +39,7 @@ def test_montgomery(): _check_subset(dataset["test"], 28) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_get_samples_weights(): from ptbench.configs.datasets.montgomery.default import dataset @@ -60,6 +62,7 @@ def test_get_samples_weights_multi(): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_get_samples_weights_concat(): from ptbench.configs.datasets.montgomery.default import dataset @@ -95,6 +98,7 @@ def test_get_samples_weights_multi_concat(): np.testing.assert_equal(train_samples_weights, ref_samples_weights) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_get_positive_weights(): from ptbench.configs.datasets.montgomery.default import dataset @@ -167,6 +171,7 @@ def test_get_positive_weights_multi(): ) +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_get_positive_weights_concat(): from ptbench.configs.datasets.montgomery.default import dataset diff --git a/tests/test_data_utils.py b/tests/test_data_utils.py index d21d050a..cc2c0924 100644 --- a/tests/test_data_utils.py +++ b/tests/test_data_utils.py @@ -7,11 +7,11 @@ import numpy import pytest -from ptbench.configs.datasets.montgomery_RS import fold_0 as mc - @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_random_permute(): + from ptbench.configs.datasets.montgomery_RS import fold_0 as mc + test_set = mc.dataset["test"] original = numpy.zeros(len(test_set)) diff --git a/tests/test_hivtb_RS.py b/tests/test_hivtb_RS.py index f33bea44..5e66563b 100644 --- a/tests/test_hivtb_RS.py +++ b/tests/test_hivtb_RS.py @@ -4,10 +4,10 @@ """Tests for HIV-TB_RS dataset.""" -from ptbench.data.hivtb_RS import dataset - def test_protocol_consistency(): + from ptbench.data.hivtb_RS import dataset + # Cross-validation fold 0-2 for f in range(3): subset = dataset.subsets("fold_" + str(f)) @@ -70,6 +70,8 @@ def test_protocol_consistency(): def test_loading(): + from ptbench.data.hivtb_RS import dataset + def _check_sample(s): data = s.data diff --git a/tests/test_in.py b/tests/test_in.py index a14eacae..8cdc0dd0 100644 --- a/tests/test_in.py +++ b/tests/test_in.py @@ -6,10 +6,10 @@ import pytest -from ptbench.data.indian import dataset - def test_protocol_consistency(): + from ptbench.data.indian import dataset + # Default protocol subset = dataset.subsets("default") assert len(subset) == 3 @@ -102,6 +102,8 @@ def test_protocol_consistency(): @pytest.mark.skip_if_rc_var_not_set("datadir.indian") def test_loading(): + from ptbench.data.indian import dataset + def _check_size(size): if ( size[0] >= 1024 @@ -133,4 +135,6 @@ def test_loading(): @pytest.mark.skip_if_rc_var_not_set("datadir.indian") def test_check(): + from ptbench.data.indian import dataset + assert dataset.check() == 0 diff --git a/tests/test_mc.py b/tests/test_mc.py index 510e5a7f..38b7b8fb 100644 --- a/tests/test_mc.py +++ b/tests/test_mc.py @@ -6,10 +6,10 @@ import pytest -from ptbench.data.montgomery import dataset - def test_protocol_consistency(): + from ptbench.data.montgomery import dataset + # Default protocol subset = dataset.subsets("default") assert len(subset) == 3 @@ -102,6 +102,8 @@ def test_protocol_consistency(): @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_loading(): + from ptbench.data.montgomery import dataset + image_size_portrait = (4020, 4892) image_size_landscape = (4892, 4020) @@ -133,4 +135,6 @@ def test_loading(): @pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_check(): + from ptbench.data.montgomery import dataset + assert dataset.check() == 0 diff --git a/tests/test_mc_RS.py b/tests/test_mc_RS.py index 82ec991b..513fff8c 100644 --- a/tests/test_mc_RS.py +++ b/tests/test_mc_RS.py @@ -4,10 +4,12 @@ """Tests for Extended Montgomery dataset.""" -from ptbench.data.montgomery_RS import dataset +import pytest def test_protocol_consistency(): + from ptbench.data.montgomery_RS import dataset + # Default protocol subset = dataset.subsets("default") assert len(subset) == 3 @@ -94,7 +96,10 @@ def test_protocol_consistency(): assert s.label in [0.0, 1.0] +@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") def test_loading(): + from ptbench.data.montgomery_RS import dataset + def _check_sample(s): data = s.data diff --git a/tests/test_mc_ch.py b/tests/test_mc_ch.py index 35f0fc51..43456eaa 100644 --- a/tests/test_mc_ch.py +++ b/tests/test_mc_ch.py @@ -4,76 +4,72 @@ """Tests for the aggregated Montgomery-Shenzhen dataset.""" -import pytest - -from ptbench.configs.datasets.mc_ch import default as mc_ch -from ptbench.configs.datasets.mc_ch import fold_0 as mc_ch_f0 -from ptbench.configs.datasets.mc_ch import fold_0_rgb as mc_ch_f0_rgb -from ptbench.configs.datasets.mc_ch import fold_1 as mc_ch_f1 -from ptbench.configs.datasets.mc_ch import fold_1_rgb as mc_ch_f1_rgb -from ptbench.configs.datasets.mc_ch import fold_2 as mc_ch_f2 -from ptbench.configs.datasets.mc_ch import fold_2_rgb as mc_ch_f2_rgb -from ptbench.configs.datasets.mc_ch import fold_3 as mc_ch_f3 -from ptbench.configs.datasets.mc_ch import fold_3_rgb as mc_ch_f3_rgb -from ptbench.configs.datasets.mc_ch import fold_4 as mc_ch_f4 -from ptbench.configs.datasets.mc_ch import fold_4_rgb as mc_ch_f4_rgb -from ptbench.configs.datasets.mc_ch import fold_5 as mc_ch_f5 -from ptbench.configs.datasets.mc_ch import fold_5_rgb as mc_ch_f5_rgb -from ptbench.configs.datasets.mc_ch import fold_6 as mc_ch_f6 -from ptbench.configs.datasets.mc_ch import fold_6_rgb as mc_ch_f6_rgb -from ptbench.configs.datasets.mc_ch import fold_7 as mc_ch_f7 -from ptbench.configs.datasets.mc_ch import fold_7_rgb as mc_ch_f7_rgb -from ptbench.configs.datasets.mc_ch import fold_8 as mc_ch_f8 -from ptbench.configs.datasets.mc_ch import fold_8_rgb as mc_ch_f8_rgb -from ptbench.configs.datasets.mc_ch import fold_9 as mc_ch_f9 -from ptbench.configs.datasets.mc_ch import fold_9_rgb as mc_ch_f9_rgb -from ptbench.configs.datasets.montgomery import default as mc -from ptbench.configs.datasets.montgomery import fold_0 as mc_f0 -from ptbench.configs.datasets.montgomery import fold_0_rgb as mc_f0_rgb -from ptbench.configs.datasets.montgomery import fold_1 as mc_f1 -from ptbench.configs.datasets.montgomery import fold_1_rgb as mc_f1_rgb -from ptbench.configs.datasets.montgomery import fold_2 as mc_f2 -from ptbench.configs.datasets.montgomery import fold_2_rgb as mc_f2_rgb -from ptbench.configs.datasets.montgomery import fold_3 as mc_f3 -from ptbench.configs.datasets.montgomery import fold_3_rgb as mc_f3_rgb -from ptbench.configs.datasets.montgomery import fold_4 as mc_f4 -from ptbench.configs.datasets.montgomery import fold_4_rgb as mc_f4_rgb -from ptbench.configs.datasets.montgomery import fold_5 as mc_f5 -from ptbench.configs.datasets.montgomery import fold_5_rgb as mc_f5_rgb -from ptbench.configs.datasets.montgomery import fold_6 as mc_f6 -from ptbench.configs.datasets.montgomery import fold_6_rgb as mc_f6_rgb -from ptbench.configs.datasets.montgomery import fold_7 as mc_f7 -from ptbench.configs.datasets.montgomery import fold_7_rgb as mc_f7_rgb -from ptbench.configs.datasets.montgomery import fold_8 as mc_f8 -from ptbench.configs.datasets.montgomery import fold_8_rgb as mc_f8_rgb -from ptbench.configs.datasets.montgomery import fold_9 as mc_f9 -from ptbench.configs.datasets.montgomery import fold_9_rgb as mc_f9_rgb -from ptbench.configs.datasets.shenzhen import default as ch -from ptbench.configs.datasets.shenzhen import fold_0 as ch_f0 -from ptbench.configs.datasets.shenzhen import fold_0_rgb as ch_f0_rgb -from ptbench.configs.datasets.shenzhen import fold_1 as ch_f1 -from ptbench.configs.datasets.shenzhen import fold_1_rgb as ch_f1_rgb -from ptbench.configs.datasets.shenzhen import fold_2 as ch_f2 -from ptbench.configs.datasets.shenzhen import fold_2_rgb as ch_f2_rgb -from ptbench.configs.datasets.shenzhen import fold_3 as ch_f3 -from ptbench.configs.datasets.shenzhen import fold_3_rgb as ch_f3_rgb -from ptbench.configs.datasets.shenzhen import fold_4 as ch_f4 -from ptbench.configs.datasets.shenzhen import fold_4_rgb as ch_f4_rgb -from ptbench.configs.datasets.shenzhen import fold_5 as ch_f5 -from ptbench.configs.datasets.shenzhen import fold_5_rgb as ch_f5_rgb -from ptbench.configs.datasets.shenzhen import fold_6 as ch_f6 -from ptbench.configs.datasets.shenzhen import fold_6_rgb as ch_f6_rgb -from ptbench.configs.datasets.shenzhen import fold_7 as ch_f7 -from ptbench.configs.datasets.shenzhen import fold_7_rgb as ch_f7_rgb -from ptbench.configs.datasets.shenzhen import fold_8 as ch_f8 -from ptbench.configs.datasets.shenzhen import fold_8_rgb as ch_f8_rgb -from ptbench.configs.datasets.shenzhen import fold_9 as ch_f9 -from ptbench.configs.datasets.shenzhen import fold_9_rgb as ch_f9_rgb - - -@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") -@pytest.mark.skip_if_rc_var_not_set("datadir.shenzhen") + def test_dataset_consistency(): + from ptbench.configs.datasets.mc_ch import default as mc_ch + from ptbench.configs.datasets.mc_ch import fold_0 as mc_ch_f0 + from ptbench.configs.datasets.mc_ch import fold_0_rgb as mc_ch_f0_rgb + from ptbench.configs.datasets.mc_ch import fold_1 as mc_ch_f1 + from ptbench.configs.datasets.mc_ch import fold_1_rgb as mc_ch_f1_rgb + from ptbench.configs.datasets.mc_ch import fold_2 as mc_ch_f2 + from ptbench.configs.datasets.mc_ch import fold_2_rgb as mc_ch_f2_rgb + from ptbench.configs.datasets.mc_ch import fold_3 as mc_ch_f3 + from ptbench.configs.datasets.mc_ch import fold_3_rgb as mc_ch_f3_rgb + from ptbench.configs.datasets.mc_ch import fold_4 as mc_ch_f4 + from ptbench.configs.datasets.mc_ch import fold_4_rgb as mc_ch_f4_rgb + from ptbench.configs.datasets.mc_ch import fold_5 as mc_ch_f5 + from ptbench.configs.datasets.mc_ch import fold_5_rgb as mc_ch_f5_rgb + from ptbench.configs.datasets.mc_ch import fold_6 as mc_ch_f6 + from ptbench.configs.datasets.mc_ch import fold_6_rgb as mc_ch_f6_rgb + from ptbench.configs.datasets.mc_ch import fold_7 as mc_ch_f7 + from ptbench.configs.datasets.mc_ch import fold_7_rgb as mc_ch_f7_rgb + from ptbench.configs.datasets.mc_ch import fold_8 as mc_ch_f8 + from ptbench.configs.datasets.mc_ch import fold_8_rgb as mc_ch_f8_rgb + from ptbench.configs.datasets.mc_ch import fold_9 as mc_ch_f9 + from ptbench.configs.datasets.mc_ch import fold_9_rgb as mc_ch_f9_rgb + from ptbench.configs.datasets.montgomery import default as mc + from ptbench.configs.datasets.montgomery import fold_0 as mc_f0 + from ptbench.configs.datasets.montgomery import fold_0_rgb as mc_f0_rgb + from ptbench.configs.datasets.montgomery import fold_1 as mc_f1 + from ptbench.configs.datasets.montgomery import fold_1_rgb as mc_f1_rgb + from ptbench.configs.datasets.montgomery import fold_2 as mc_f2 + from ptbench.configs.datasets.montgomery import fold_2_rgb as mc_f2_rgb + from ptbench.configs.datasets.montgomery import fold_3 as mc_f3 + from ptbench.configs.datasets.montgomery import fold_3_rgb as mc_f3_rgb + from ptbench.configs.datasets.montgomery import fold_4 as mc_f4 + from ptbench.configs.datasets.montgomery import fold_4_rgb as mc_f4_rgb + from ptbench.configs.datasets.montgomery import fold_5 as mc_f5 + from ptbench.configs.datasets.montgomery import fold_5_rgb as mc_f5_rgb + from ptbench.configs.datasets.montgomery import fold_6 as mc_f6 + from ptbench.configs.datasets.montgomery import fold_6_rgb as mc_f6_rgb + from ptbench.configs.datasets.montgomery import fold_7 as mc_f7 + from ptbench.configs.datasets.montgomery import fold_7_rgb as mc_f7_rgb + from ptbench.configs.datasets.montgomery import fold_8 as mc_f8 + from ptbench.configs.datasets.montgomery import fold_8_rgb as mc_f8_rgb + from ptbench.configs.datasets.montgomery import fold_9 as mc_f9 + from ptbench.configs.datasets.montgomery import fold_9_rgb as mc_f9_rgb + from ptbench.configs.datasets.shenzhen import default as ch + from ptbench.configs.datasets.shenzhen import fold_0 as ch_f0 + from ptbench.configs.datasets.shenzhen import fold_0_rgb as ch_f0_rgb + from ptbench.configs.datasets.shenzhen import fold_1 as ch_f1 + from ptbench.configs.datasets.shenzhen import fold_1_rgb as ch_f1_rgb + from ptbench.configs.datasets.shenzhen import fold_2 as ch_f2 + from ptbench.configs.datasets.shenzhen import fold_2_rgb as ch_f2_rgb + from ptbench.configs.datasets.shenzhen import fold_3 as ch_f3 + from ptbench.configs.datasets.shenzhen import fold_3_rgb as ch_f3_rgb + from ptbench.configs.datasets.shenzhen import fold_4 as ch_f4 + from ptbench.configs.datasets.shenzhen import fold_4_rgb as ch_f4_rgb + from ptbench.configs.datasets.shenzhen import fold_5 as ch_f5 + from ptbench.configs.datasets.shenzhen import fold_5_rgb as ch_f5_rgb + from ptbench.configs.datasets.shenzhen import fold_6 as ch_f6 + from ptbench.configs.datasets.shenzhen import fold_6_rgb as ch_f6_rgb + from ptbench.configs.datasets.shenzhen import fold_7 as ch_f7 + from ptbench.configs.datasets.shenzhen import fold_7_rgb as ch_f7_rgb + from ptbench.configs.datasets.shenzhen import fold_8 as ch_f8 + from ptbench.configs.datasets.shenzhen import fold_8_rgb as ch_f8_rgb + from ptbench.configs.datasets.shenzhen import fold_9 as ch_f9 + from ptbench.configs.datasets.shenzhen import fold_9_rgb as ch_f9_rgb + # Default protocol mc_ch_dataset = mc_ch.dataset assert isinstance(mc_ch_dataset, dict) diff --git a/tests/test_mc_ch_RS.py b/tests/test_mc_ch_RS.py index 5d81fbee..65e96d7f 100644 --- a/tests/test_mc_ch_RS.py +++ b/tests/test_mc_ch_RS.py @@ -4,42 +4,42 @@ """Tests for the aggregated Montgomery-Shenzhen dataset.""" -from ptbench.configs.datasets.mc_ch_RS import default as mc_ch_RS -from ptbench.configs.datasets.mc_ch_RS import fold_0 as mc_ch_f0 -from ptbench.configs.datasets.mc_ch_RS import fold_1 as mc_ch_f1 -from ptbench.configs.datasets.mc_ch_RS import fold_2 as mc_ch_f2 -from ptbench.configs.datasets.mc_ch_RS import fold_3 as mc_ch_f3 -from ptbench.configs.datasets.mc_ch_RS import fold_4 as mc_ch_f4 -from ptbench.configs.datasets.mc_ch_RS import fold_5 as mc_ch_f5 -from ptbench.configs.datasets.mc_ch_RS import fold_6 as mc_ch_f6 -from ptbench.configs.datasets.mc_ch_RS import fold_7 as mc_ch_f7 -from ptbench.configs.datasets.mc_ch_RS import fold_8 as mc_ch_f8 -from ptbench.configs.datasets.mc_ch_RS import fold_9 as mc_ch_f9 -from ptbench.configs.datasets.montgomery_RS import default as mc_RS -from ptbench.configs.datasets.montgomery_RS import fold_0 as mc_f0 -from ptbench.configs.datasets.montgomery_RS import fold_1 as mc_f1 -from ptbench.configs.datasets.montgomery_RS import fold_2 as mc_f2 -from ptbench.configs.datasets.montgomery_RS import fold_3 as mc_f3 -from ptbench.configs.datasets.montgomery_RS import fold_4 as mc_f4 -from ptbench.configs.datasets.montgomery_RS import fold_5 as mc_f5 -from ptbench.configs.datasets.montgomery_RS import fold_6 as mc_f6 -from ptbench.configs.datasets.montgomery_RS import fold_7 as mc_f7 -from ptbench.configs.datasets.montgomery_RS import fold_8 as mc_f8 -from ptbench.configs.datasets.montgomery_RS import fold_9 as mc_f9 -from ptbench.configs.datasets.shenzhen_RS import default as ch_RS -from ptbench.configs.datasets.shenzhen_RS import fold_0 as ch_f0 -from ptbench.configs.datasets.shenzhen_RS import fold_1 as ch_f1 -from ptbench.configs.datasets.shenzhen_RS import fold_2 as ch_f2 -from ptbench.configs.datasets.shenzhen_RS import fold_3 as ch_f3 -from ptbench.configs.datasets.shenzhen_RS import fold_4 as ch_f4 -from ptbench.configs.datasets.shenzhen_RS import fold_5 as ch_f5 -from ptbench.configs.datasets.shenzhen_RS import fold_6 as ch_f6 -from ptbench.configs.datasets.shenzhen_RS import fold_7 as ch_f7 -from ptbench.configs.datasets.shenzhen_RS import fold_8 as ch_f8 -from ptbench.configs.datasets.shenzhen_RS import fold_9 as ch_f9 - def test_dataset_consistency(): + from ptbench.configs.datasets.mc_ch_RS import default as mc_ch_RS + from ptbench.configs.datasets.mc_ch_RS import fold_0 as mc_ch_f0 + from ptbench.configs.datasets.mc_ch_RS import fold_1 as mc_ch_f1 + from ptbench.configs.datasets.mc_ch_RS import fold_2 as mc_ch_f2 + from ptbench.configs.datasets.mc_ch_RS import fold_3 as mc_ch_f3 + from ptbench.configs.datasets.mc_ch_RS import fold_4 as mc_ch_f4 + from ptbench.configs.datasets.mc_ch_RS import fold_5 as mc_ch_f5 + from ptbench.configs.datasets.mc_ch_RS import fold_6 as mc_ch_f6 + from ptbench.configs.datasets.mc_ch_RS import fold_7 as mc_ch_f7 + from ptbench.configs.datasets.mc_ch_RS import fold_8 as mc_ch_f8 + from ptbench.configs.datasets.mc_ch_RS import fold_9 as mc_ch_f9 + from ptbench.configs.datasets.montgomery_RS import default as mc_RS + from ptbench.configs.datasets.montgomery_RS import fold_0 as mc_f0 + from ptbench.configs.datasets.montgomery_RS import fold_1 as mc_f1 + from ptbench.configs.datasets.montgomery_RS import fold_2 as mc_f2 + from ptbench.configs.datasets.montgomery_RS import fold_3 as mc_f3 + from ptbench.configs.datasets.montgomery_RS import fold_4 as mc_f4 + from ptbench.configs.datasets.montgomery_RS import fold_5 as mc_f5 + from ptbench.configs.datasets.montgomery_RS import fold_6 as mc_f6 + from ptbench.configs.datasets.montgomery_RS import fold_7 as mc_f7 + from ptbench.configs.datasets.montgomery_RS import fold_8 as mc_f8 + from ptbench.configs.datasets.montgomery_RS import fold_9 as mc_f9 + from ptbench.configs.datasets.shenzhen_RS import default as ch_RS + from ptbench.configs.datasets.shenzhen_RS import fold_0 as ch_f0 + from ptbench.configs.datasets.shenzhen_RS import fold_1 as ch_f1 + from ptbench.configs.datasets.shenzhen_RS import fold_2 as ch_f2 + from ptbench.configs.datasets.shenzhen_RS import fold_3 as ch_f3 + from ptbench.configs.datasets.shenzhen_RS import fold_4 as ch_f4 + from ptbench.configs.datasets.shenzhen_RS import fold_5 as ch_f5 + from ptbench.configs.datasets.shenzhen_RS import fold_6 as ch_f6 + from ptbench.configs.datasets.shenzhen_RS import fold_7 as ch_f7 + from ptbench.configs.datasets.shenzhen_RS import fold_8 as ch_f8 + from ptbench.configs.datasets.shenzhen_RS import fold_9 as ch_f9 + # Default protocol mc_ch_RS_dataset = mc_ch_RS.dataset assert isinstance(mc_ch_RS_dataset, dict) diff --git a/tests/test_mc_ch_in.py b/tests/test_mc_ch_in.py index 2c5d55b9..0d1ea350 100644 --- a/tests/test_mc_ch_in.py +++ b/tests/test_mc_ch_in.py @@ -4,98 +4,93 @@ """Tests for the aggregated Montgomery-Shenzhen-Indian dataset.""" -import pytest - -from ptbench.configs.datasets.indian import default as indian -from ptbench.configs.datasets.indian import fold_0 as indian_f0 -from ptbench.configs.datasets.indian import fold_0_rgb as indian_f0_rgb -from ptbench.configs.datasets.indian import fold_1 as indian_f1 -from ptbench.configs.datasets.indian import fold_1_rgb as indian_f1_rgb -from ptbench.configs.datasets.indian import fold_2 as indian_f2 -from ptbench.configs.datasets.indian import fold_2_rgb as indian_f2_rgb -from ptbench.configs.datasets.indian import fold_3 as indian_f3 -from ptbench.configs.datasets.indian import fold_3_rgb as indian_f3_rgb -from ptbench.configs.datasets.indian import fold_4 as indian_f4 -from ptbench.configs.datasets.indian import fold_4_rgb as indian_f4_rgb -from ptbench.configs.datasets.indian import fold_5 as indian_f5 -from ptbench.configs.datasets.indian import fold_5_rgb as indian_f5_rgb -from ptbench.configs.datasets.indian import fold_6 as indian_f6 -from ptbench.configs.datasets.indian import fold_6_rgb as indian_f6_rgb -from ptbench.configs.datasets.indian import fold_7 as indian_f7 -from ptbench.configs.datasets.indian import fold_7_rgb as indian_f7_rgb -from ptbench.configs.datasets.indian import fold_8 as indian_f8 -from ptbench.configs.datasets.indian import fold_8_rgb as indian_f8_rgb -from ptbench.configs.datasets.indian import fold_9 as indian_f9 -from ptbench.configs.datasets.indian import fold_9_rgb as indian_f9_rgb -from ptbench.configs.datasets.mc_ch_in import default as mc_ch_in -from ptbench.configs.datasets.mc_ch_in import fold_0 as mc_ch_in_f0 -from ptbench.configs.datasets.mc_ch_in import fold_0_rgb as mc_ch_in_f0_rgb -from ptbench.configs.datasets.mc_ch_in import fold_1 as mc_ch_in_f1 -from ptbench.configs.datasets.mc_ch_in import fold_1_rgb as mc_ch_in_f1_rgb -from ptbench.configs.datasets.mc_ch_in import fold_2 as mc_ch_in_f2 -from ptbench.configs.datasets.mc_ch_in import fold_2_rgb as mc_ch_in_f2_rgb -from ptbench.configs.datasets.mc_ch_in import fold_3 as mc_ch_in_f3 -from ptbench.configs.datasets.mc_ch_in import fold_3_rgb as mc_ch_in_f3_rgb -from ptbench.configs.datasets.mc_ch_in import fold_4 as mc_ch_in_f4 -from ptbench.configs.datasets.mc_ch_in import fold_4_rgb as mc_ch_in_f4_rgb -from ptbench.configs.datasets.mc_ch_in import fold_5 as mc_ch_in_f5 -from ptbench.configs.datasets.mc_ch_in import fold_5_rgb as mc_ch_in_f5_rgb -from ptbench.configs.datasets.mc_ch_in import fold_6 as mc_ch_in_f6 -from ptbench.configs.datasets.mc_ch_in import fold_6_rgb as mc_ch_in_f6_rgb -from ptbench.configs.datasets.mc_ch_in import fold_7 as mc_ch_in_f7 -from ptbench.configs.datasets.mc_ch_in import fold_7_rgb as mc_ch_in_f7_rgb -from ptbench.configs.datasets.mc_ch_in import fold_8 as mc_ch_in_f8 -from ptbench.configs.datasets.mc_ch_in import fold_8_rgb as mc_ch_in_f8_rgb -from ptbench.configs.datasets.mc_ch_in import fold_9 as mc_ch_in_f9 -from ptbench.configs.datasets.mc_ch_in import fold_9_rgb as mc_ch_in_f9_rgb -from ptbench.configs.datasets.montgomery import default as mc -from ptbench.configs.datasets.montgomery import fold_0 as mc_f0 -from ptbench.configs.datasets.montgomery import fold_0_rgb as mc_f0_rgb -from ptbench.configs.datasets.montgomery import fold_1 as mc_f1 -from ptbench.configs.datasets.montgomery import fold_1_rgb as mc_f1_rgb -from ptbench.configs.datasets.montgomery import fold_2 as mc_f2 -from ptbench.configs.datasets.montgomery import fold_2_rgb as mc_f2_rgb -from ptbench.configs.datasets.montgomery import fold_3 as mc_f3 -from ptbench.configs.datasets.montgomery import fold_3_rgb as mc_f3_rgb -from ptbench.configs.datasets.montgomery import fold_4 as mc_f4 -from ptbench.configs.datasets.montgomery import fold_4_rgb as mc_f4_rgb -from ptbench.configs.datasets.montgomery import fold_5 as mc_f5 -from ptbench.configs.datasets.montgomery import fold_5_rgb as mc_f5_rgb -from ptbench.configs.datasets.montgomery import fold_6 as mc_f6 -from ptbench.configs.datasets.montgomery import fold_6_rgb as mc_f6_rgb -from ptbench.configs.datasets.montgomery import fold_7 as mc_f7 -from ptbench.configs.datasets.montgomery import fold_7_rgb as mc_f7_rgb -from ptbench.configs.datasets.montgomery import fold_8 as mc_f8 -from ptbench.configs.datasets.montgomery import fold_8_rgb as mc_f8_rgb -from ptbench.configs.datasets.montgomery import fold_9 as mc_f9 -from ptbench.configs.datasets.montgomery import fold_9_rgb as mc_f9_rgb -from ptbench.configs.datasets.shenzhen import default as ch -from ptbench.configs.datasets.shenzhen import fold_0 as ch_f0 -from ptbench.configs.datasets.shenzhen import fold_0_rgb as ch_f0_rgb -from ptbench.configs.datasets.shenzhen import fold_1 as ch_f1 -from ptbench.configs.datasets.shenzhen import fold_1_rgb as ch_f1_rgb -from ptbench.configs.datasets.shenzhen import fold_2 as ch_f2 -from ptbench.configs.datasets.shenzhen import fold_2_rgb as ch_f2_rgb -from ptbench.configs.datasets.shenzhen import fold_3 as ch_f3 -from ptbench.configs.datasets.shenzhen import fold_3_rgb as ch_f3_rgb -from ptbench.configs.datasets.shenzhen import fold_4 as ch_f4 -from ptbench.configs.datasets.shenzhen import fold_4_rgb as ch_f4_rgb -from ptbench.configs.datasets.shenzhen import fold_5 as ch_f5 -from ptbench.configs.datasets.shenzhen import fold_5_rgb as ch_f5_rgb -from ptbench.configs.datasets.shenzhen import fold_6 as ch_f6 -from ptbench.configs.datasets.shenzhen import fold_6_rgb as ch_f6_rgb -from ptbench.configs.datasets.shenzhen import fold_7 as ch_f7 -from ptbench.configs.datasets.shenzhen import fold_7_rgb as ch_f7_rgb -from ptbench.configs.datasets.shenzhen import fold_8 as ch_f8 -from ptbench.configs.datasets.shenzhen import fold_8_rgb as ch_f8_rgb -from ptbench.configs.datasets.shenzhen import fold_9 as ch_f9 -from ptbench.configs.datasets.shenzhen import fold_9_rgb as ch_f9_rgb - - -@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") -@pytest.mark.skip_if_rc_var_not_set("datadir.shenzhen") -@pytest.mark.skip_if_rc_var_not_set("datadir.indian") + def test_dataset_consistency(): + from ptbench.configs.datasets.indian import default as indian + from ptbench.configs.datasets.indian import fold_0 as indian_f0 + from ptbench.configs.datasets.indian import fold_0_rgb as indian_f0_rgb + from ptbench.configs.datasets.indian import fold_1 as indian_f1 + from ptbench.configs.datasets.indian import fold_1_rgb as indian_f1_rgb + from ptbench.configs.datasets.indian import fold_2 as indian_f2 + from ptbench.configs.datasets.indian import fold_2_rgb as indian_f2_rgb + from ptbench.configs.datasets.indian import fold_3 as indian_f3 + from ptbench.configs.datasets.indian import fold_3_rgb as indian_f3_rgb + from ptbench.configs.datasets.indian import fold_4 as indian_f4 + from ptbench.configs.datasets.indian import fold_4_rgb as indian_f4_rgb + from ptbench.configs.datasets.indian import fold_5 as indian_f5 + from ptbench.configs.datasets.indian import fold_5_rgb as indian_f5_rgb + from ptbench.configs.datasets.indian import fold_6 as indian_f6 + from ptbench.configs.datasets.indian import fold_6_rgb as indian_f6_rgb + from ptbench.configs.datasets.indian import fold_7 as indian_f7 + from ptbench.configs.datasets.indian import fold_7_rgb as indian_f7_rgb + from ptbench.configs.datasets.indian import fold_8 as indian_f8 + from ptbench.configs.datasets.indian import fold_8_rgb as indian_f8_rgb + from ptbench.configs.datasets.indian import fold_9 as indian_f9 + from ptbench.configs.datasets.indian import fold_9_rgb as indian_f9_rgb + from ptbench.configs.datasets.mc_ch_in import default as mc_ch_in + from ptbench.configs.datasets.mc_ch_in import fold_0 as mc_ch_in_f0 + from ptbench.configs.datasets.mc_ch_in import fold_0_rgb as mc_ch_in_f0_rgb + from ptbench.configs.datasets.mc_ch_in import fold_1 as mc_ch_in_f1 + from ptbench.configs.datasets.mc_ch_in import fold_1_rgb as mc_ch_in_f1_rgb + from ptbench.configs.datasets.mc_ch_in import fold_2 as mc_ch_in_f2 + from ptbench.configs.datasets.mc_ch_in import fold_2_rgb as mc_ch_in_f2_rgb + from ptbench.configs.datasets.mc_ch_in import fold_3 as mc_ch_in_f3 + from ptbench.configs.datasets.mc_ch_in import fold_3_rgb as mc_ch_in_f3_rgb + from ptbench.configs.datasets.mc_ch_in import fold_4 as mc_ch_in_f4 + from ptbench.configs.datasets.mc_ch_in import fold_4_rgb as mc_ch_in_f4_rgb + from ptbench.configs.datasets.mc_ch_in import fold_5 as mc_ch_in_f5 + from ptbench.configs.datasets.mc_ch_in import fold_5_rgb as mc_ch_in_f5_rgb + from ptbench.configs.datasets.mc_ch_in import fold_6 as mc_ch_in_f6 + from ptbench.configs.datasets.mc_ch_in import fold_6_rgb as mc_ch_in_f6_rgb + from ptbench.configs.datasets.mc_ch_in import fold_7 as mc_ch_in_f7 + from ptbench.configs.datasets.mc_ch_in import fold_7_rgb as mc_ch_in_f7_rgb + from ptbench.configs.datasets.mc_ch_in import fold_8 as mc_ch_in_f8 + from ptbench.configs.datasets.mc_ch_in import fold_8_rgb as mc_ch_in_f8_rgb + from ptbench.configs.datasets.mc_ch_in import fold_9 as mc_ch_in_f9 + from ptbench.configs.datasets.mc_ch_in import fold_9_rgb as mc_ch_in_f9_rgb + from ptbench.configs.datasets.montgomery import default as mc + from ptbench.configs.datasets.montgomery import fold_0 as mc_f0 + from ptbench.configs.datasets.montgomery import fold_0_rgb as mc_f0_rgb + from ptbench.configs.datasets.montgomery import fold_1 as mc_f1 + from ptbench.configs.datasets.montgomery import fold_1_rgb as mc_f1_rgb + from ptbench.configs.datasets.montgomery import fold_2 as mc_f2 + from ptbench.configs.datasets.montgomery import fold_2_rgb as mc_f2_rgb + from ptbench.configs.datasets.montgomery import fold_3 as mc_f3 + from ptbench.configs.datasets.montgomery import fold_3_rgb as mc_f3_rgb + from ptbench.configs.datasets.montgomery import fold_4 as mc_f4 + from ptbench.configs.datasets.montgomery import fold_4_rgb as mc_f4_rgb + from ptbench.configs.datasets.montgomery import fold_5 as mc_f5 + from ptbench.configs.datasets.montgomery import fold_5_rgb as mc_f5_rgb + from ptbench.configs.datasets.montgomery import fold_6 as mc_f6 + from ptbench.configs.datasets.montgomery import fold_6_rgb as mc_f6_rgb + from ptbench.configs.datasets.montgomery import fold_7 as mc_f7 + from ptbench.configs.datasets.montgomery import fold_7_rgb as mc_f7_rgb + from ptbench.configs.datasets.montgomery import fold_8 as mc_f8 + from ptbench.configs.datasets.montgomery import fold_8_rgb as mc_f8_rgb + from ptbench.configs.datasets.montgomery import fold_9 as mc_f9 + from ptbench.configs.datasets.montgomery import fold_9_rgb as mc_f9_rgb + from ptbench.configs.datasets.shenzhen import default as ch + from ptbench.configs.datasets.shenzhen import fold_0 as ch_f0 + from ptbench.configs.datasets.shenzhen import fold_0_rgb as ch_f0_rgb + from ptbench.configs.datasets.shenzhen import fold_1 as ch_f1 + from ptbench.configs.datasets.shenzhen import fold_1_rgb as ch_f1_rgb + from ptbench.configs.datasets.shenzhen import fold_2 as ch_f2 + from ptbench.configs.datasets.shenzhen import fold_2_rgb as ch_f2_rgb + from ptbench.configs.datasets.shenzhen import fold_3 as ch_f3 + from ptbench.configs.datasets.shenzhen import fold_3_rgb as ch_f3_rgb + from ptbench.configs.datasets.shenzhen import fold_4 as ch_f4 + from ptbench.configs.datasets.shenzhen import fold_4_rgb as ch_f4_rgb + from ptbench.configs.datasets.shenzhen import fold_5 as ch_f5 + from ptbench.configs.datasets.shenzhen import fold_5_rgb as ch_f5_rgb + from ptbench.configs.datasets.shenzhen import fold_6 as ch_f6 + from ptbench.configs.datasets.shenzhen import fold_6_rgb as ch_f6_rgb + from ptbench.configs.datasets.shenzhen import fold_7 as ch_f7 + from ptbench.configs.datasets.shenzhen import fold_7_rgb as ch_f7_rgb + from ptbench.configs.datasets.shenzhen import fold_8 as ch_f8 + from ptbench.configs.datasets.shenzhen import fold_8_rgb as ch_f8_rgb + from ptbench.configs.datasets.shenzhen import fold_9 as ch_f9 + from ptbench.configs.datasets.shenzhen import fold_9_rgb as ch_f9_rgb + # Default protocol mc_ch_in_dataset = mc_ch_in.dataset assert isinstance(mc_ch_in_dataset, dict) diff --git a/tests/test_mc_ch_in_RS.py b/tests/test_mc_ch_in_RS.py index 79190007..37fe4e33 100644 --- a/tests/test_mc_ch_in_RS.py +++ b/tests/test_mc_ch_in_RS.py @@ -4,53 +4,53 @@ """Tests for the aggregated Montgomery-Shenzhen-Indian dataset.""" -from ptbench.configs.datasets.indian_RS import default as indian_RS -from ptbench.configs.datasets.indian_RS import fold_0 as indian_f0 -from ptbench.configs.datasets.indian_RS import fold_1 as indian_f1 -from ptbench.configs.datasets.indian_RS import fold_2 as indian_f2 -from ptbench.configs.datasets.indian_RS import fold_3 as indian_f3 -from ptbench.configs.datasets.indian_RS import fold_4 as indian_f4 -from ptbench.configs.datasets.indian_RS import fold_5 as indian_f5 -from ptbench.configs.datasets.indian_RS import fold_6 as indian_f6 -from ptbench.configs.datasets.indian_RS import fold_7 as indian_f7 -from ptbench.configs.datasets.indian_RS import fold_8 as indian_f8 -from ptbench.configs.datasets.indian_RS import fold_9 as indian_f9 -from ptbench.configs.datasets.mc_ch_in_RS import default as mc_ch_in_RS -from ptbench.configs.datasets.mc_ch_in_RS import fold_0 as mc_ch_in_f0 -from ptbench.configs.datasets.mc_ch_in_RS import fold_1 as mc_ch_in_f1 -from ptbench.configs.datasets.mc_ch_in_RS import fold_2 as mc_ch_in_f2 -from ptbench.configs.datasets.mc_ch_in_RS import fold_3 as mc_ch_in_f3 -from ptbench.configs.datasets.mc_ch_in_RS import fold_4 as mc_ch_in_f4 -from ptbench.configs.datasets.mc_ch_in_RS import fold_5 as mc_ch_in_f5 -from ptbench.configs.datasets.mc_ch_in_RS import fold_6 as mc_ch_in_f6 -from ptbench.configs.datasets.mc_ch_in_RS import fold_7 as mc_ch_in_f7 -from ptbench.configs.datasets.mc_ch_in_RS import fold_8 as mc_ch_in_f8 -from ptbench.configs.datasets.mc_ch_in_RS import fold_9 as mc_ch_in_f9 -from ptbench.configs.datasets.montgomery_RS import default as mc_RS -from ptbench.configs.datasets.montgomery_RS import fold_0 as mc_f0 -from ptbench.configs.datasets.montgomery_RS import fold_1 as mc_f1 -from ptbench.configs.datasets.montgomery_RS import fold_2 as mc_f2 -from ptbench.configs.datasets.montgomery_RS import fold_3 as mc_f3 -from ptbench.configs.datasets.montgomery_RS import fold_4 as mc_f4 -from ptbench.configs.datasets.montgomery_RS import fold_5 as mc_f5 -from ptbench.configs.datasets.montgomery_RS import fold_6 as mc_f6 -from ptbench.configs.datasets.montgomery_RS import fold_7 as mc_f7 -from ptbench.configs.datasets.montgomery_RS import fold_8 as mc_f8 -from ptbench.configs.datasets.montgomery_RS import fold_9 as mc_f9 -from ptbench.configs.datasets.shenzhen_RS import default as ch_RS -from ptbench.configs.datasets.shenzhen_RS import fold_0 as ch_f0 -from ptbench.configs.datasets.shenzhen_RS import fold_1 as ch_f1 -from ptbench.configs.datasets.shenzhen_RS import fold_2 as ch_f2 -from ptbench.configs.datasets.shenzhen_RS import fold_3 as ch_f3 -from ptbench.configs.datasets.shenzhen_RS import fold_4 as ch_f4 -from ptbench.configs.datasets.shenzhen_RS import fold_5 as ch_f5 -from ptbench.configs.datasets.shenzhen_RS import fold_6 as ch_f6 -from ptbench.configs.datasets.shenzhen_RS import fold_7 as ch_f7 -from ptbench.configs.datasets.shenzhen_RS import fold_8 as ch_f8 -from ptbench.configs.datasets.shenzhen_RS import fold_9 as ch_f9 - def test_dataset_consistency(): + from ptbench.configs.datasets.indian_RS import default as indian_RS + from ptbench.configs.datasets.indian_RS import fold_0 as indian_f0 + from ptbench.configs.datasets.indian_RS import fold_1 as indian_f1 + from ptbench.configs.datasets.indian_RS import fold_2 as indian_f2 + from ptbench.configs.datasets.indian_RS import fold_3 as indian_f3 + from ptbench.configs.datasets.indian_RS import fold_4 as indian_f4 + from ptbench.configs.datasets.indian_RS import fold_5 as indian_f5 + from ptbench.configs.datasets.indian_RS import fold_6 as indian_f6 + from ptbench.configs.datasets.indian_RS import fold_7 as indian_f7 + from ptbench.configs.datasets.indian_RS import fold_8 as indian_f8 + from ptbench.configs.datasets.indian_RS import fold_9 as indian_f9 + from ptbench.configs.datasets.mc_ch_in_RS import default as mc_ch_in_RS + from ptbench.configs.datasets.mc_ch_in_RS import fold_0 as mc_ch_in_f0 + from ptbench.configs.datasets.mc_ch_in_RS import fold_1 as mc_ch_in_f1 + from ptbench.configs.datasets.mc_ch_in_RS import fold_2 as mc_ch_in_f2 + from ptbench.configs.datasets.mc_ch_in_RS import fold_3 as mc_ch_in_f3 + from ptbench.configs.datasets.mc_ch_in_RS import fold_4 as mc_ch_in_f4 + from ptbench.configs.datasets.mc_ch_in_RS import fold_5 as mc_ch_in_f5 + from ptbench.configs.datasets.mc_ch_in_RS import fold_6 as mc_ch_in_f6 + from ptbench.configs.datasets.mc_ch_in_RS import fold_7 as mc_ch_in_f7 + from ptbench.configs.datasets.mc_ch_in_RS import fold_8 as mc_ch_in_f8 + from ptbench.configs.datasets.mc_ch_in_RS import fold_9 as mc_ch_in_f9 + from ptbench.configs.datasets.montgomery_RS import default as mc_RS + from ptbench.configs.datasets.montgomery_RS import fold_0 as mc_f0 + from ptbench.configs.datasets.montgomery_RS import fold_1 as mc_f1 + from ptbench.configs.datasets.montgomery_RS import fold_2 as mc_f2 + from ptbench.configs.datasets.montgomery_RS import fold_3 as mc_f3 + from ptbench.configs.datasets.montgomery_RS import fold_4 as mc_f4 + from ptbench.configs.datasets.montgomery_RS import fold_5 as mc_f5 + from ptbench.configs.datasets.montgomery_RS import fold_6 as mc_f6 + from ptbench.configs.datasets.montgomery_RS import fold_7 as mc_f7 + from ptbench.configs.datasets.montgomery_RS import fold_8 as mc_f8 + from ptbench.configs.datasets.montgomery_RS import fold_9 as mc_f9 + from ptbench.configs.datasets.shenzhen_RS import default as ch_RS + from ptbench.configs.datasets.shenzhen_RS import fold_0 as ch_f0 + from ptbench.configs.datasets.shenzhen_RS import fold_1 as ch_f1 + from ptbench.configs.datasets.shenzhen_RS import fold_2 as ch_f2 + from ptbench.configs.datasets.shenzhen_RS import fold_3 as ch_f3 + from ptbench.configs.datasets.shenzhen_RS import fold_4 as ch_f4 + from ptbench.configs.datasets.shenzhen_RS import fold_5 as ch_f5 + from ptbench.configs.datasets.shenzhen_RS import fold_6 as ch_f6 + from ptbench.configs.datasets.shenzhen_RS import fold_7 as ch_f7 + from ptbench.configs.datasets.shenzhen_RS import fold_8 as ch_f8 + from ptbench.configs.datasets.shenzhen_RS import fold_9 as ch_f9 + # Default protocol mc_ch_in_RS_dataset = mc_ch_in_RS.dataset assert isinstance(mc_ch_in_RS_dataset, dict) diff --git a/tests/test_mc_ch_in_pc.py b/tests/test_mc_ch_in_pc.py index bfc3216f..59803a0f 100644 --- a/tests/test_mc_ch_in_pc.py +++ b/tests/test_mc_ch_in_pc.py @@ -4,20 +4,14 @@ """Tests for the aggregated Montgomery-Shenzhen-Indian-Padchest dataset.""" -import pytest -from ptbench.configs.datasets.indian import default as indian -from ptbench.configs.datasets.mc_ch_in_pc import default as mc_ch_in_pc -from ptbench.configs.datasets.montgomery import default as mc -from ptbench.configs.datasets.padchest import tb_idiap as pc -from ptbench.configs.datasets.shenzhen import default as ch - - -@pytest.mark.skip_if_rc_var_not_set("datadir.montgomery") -@pytest.mark.skip_if_rc_var_not_set("datadir.shenzhen") -@pytest.mark.skip_if_rc_var_not_set("datadir.indian") -@pytest.mark.skip_if_rc_var_not_set("datadir.padchest") def test_dataset_consistency(): + from ptbench.configs.datasets.indian import default as indian + from ptbench.configs.datasets.mc_ch_in_pc import default as mc_ch_in_pc + from ptbench.configs.datasets.montgomery import default as mc + from ptbench.configs.datasets.padchest import tb_idiap as pc + from ptbench.configs.datasets.shenzhen import default as ch + # Default protocol mc_ch_in_pc_dataset = mc_ch_in_pc.dataset assert isinstance(mc_ch_in_pc_dataset, dict) diff --git a/tests/test_mc_ch_in_pc_RS.py b/tests/test_mc_ch_in_pc_RS.py index 625393d6..40a199d0 100644 --- a/tests/test_mc_ch_in_pc_RS.py +++ b/tests/test_mc_ch_in_pc_RS.py @@ -4,14 +4,14 @@ """Tests for the aggregated Montgomery-Shenzhen-Indian-Padchest(TB) dataset.""" -from ptbench.configs.datasets.indian_RS import default as in_RS -from ptbench.configs.datasets.mc_ch_in_pc_RS import default as mc_ch_in_pc -from ptbench.configs.datasets.montgomery_RS import default as mc_RS -from ptbench.configs.datasets.padchest_RS import tb_idiap as pc_RS -from ptbench.configs.datasets.shenzhen_RS import default as ch_RS - def test_dataset_consistency(): + from ptbench.configs.datasets.indian_RS import default as in_RS + from ptbench.configs.datasets.mc_ch_in_pc_RS import default as mc_ch_in_pc + from ptbench.configs.datasets.montgomery_RS import default as mc_RS + from ptbench.configs.datasets.padchest_RS import tb_idiap as pc_RS + from ptbench.configs.datasets.shenzhen_RS import default as ch_RS + # Default protocol mc_ch_in_pc_dataset = mc_ch_in_pc.dataset assert isinstance(mc_ch_in_pc_dataset, dict) diff --git a/tests/test_nih_cxr14.py b/tests/test_nih_cxr14.py index b2c7f5aa..b00bf63f 100644 --- a/tests/test_nih_cxr14.py +++ b/tests/test_nih_cxr14.py @@ -6,10 +6,10 @@ import pytest -from ptbench.data.nih_cxr14_re import dataset - def test_protocol_consistency(): + from ptbench.data.nih_cxr14_re import dataset + # Default protocol subset = dataset.subsets("default") assert len(subset) == 3 @@ -45,6 +45,8 @@ def test_protocol_consistency(): @pytest.mark.skip_if_rc_var_not_set("datadir.nih_cxr14_re") def test_loading(): + from ptbench.data.nih_cxr14_re import dataset + def _check_size(size): if size == (1024, 1024): return True diff --git a/tests/test_nih_cxr14_pc.py b/tests/test_nih_cxr14_pc.py index 26ed6f63..4f0194de 100644 --- a/tests/test_nih_cxr14_pc.py +++ b/tests/test_nih_cxr14_pc.py @@ -4,16 +4,12 @@ """Tests for the aggregated NIH CXR14-PadChest dataset.""" -import pytest -from ptbench.configs.datasets.nih_cxr14_re import default as nih -from ptbench.configs.datasets.nih_cxr14_re_pc import idiap as nih_pc -from ptbench.configs.datasets.padchest import no_tb_idiap as pc - - -@pytest.mark.skip_if_rc_var_not_set("datadir.padchest") -@pytest.mark.skip_if_rc_var_not_set("datadir.nih_cxr14_re") def test_dataset_consistency(): + from ptbench.configs.datasets.nih_cxr14_re import default as nih + from ptbench.configs.datasets.nih_cxr14_re_pc import idiap as nih_pc + from ptbench.configs.datasets.padchest import no_tb_idiap as pc + # Default protocol nih_pc_dataset = nih_pc.dataset assert isinstance(nih_pc_dataset, dict) diff --git a/tests/test_pc.py b/tests/test_pc.py index b085e94a..6c6657a4 100644 --- a/tests/test_pc.py +++ b/tests/test_pc.py @@ -6,10 +6,10 @@ import pytest -from ptbench.data.padchest import dataset - def test_protocol_consistency(): + from ptbench.data.padchest import dataset + # Default protocol subset = dataset.subsets("idiap") assert len(subset) == 1 @@ -63,4 +63,6 @@ def test_protocol_consistency(): @pytest.mark.skip_if_rc_var_not_set("datadir.padchest") def test_check(): + from ptbench.data.padchest import dataset + assert dataset.check() == 0 diff --git a/tests/test_pc_RS.py b/tests/test_pc_RS.py index f42d02ff..1ff99a8a 100644 --- a/tests/test_pc_RS.py +++ b/tests/test_pc_RS.py @@ -4,10 +4,10 @@ """Tests for Extended Padchest dataset.""" -from ptbench.data.padchest_RS import dataset - def test_protocol_consistency(): + from ptbench.data.padchest_RS import dataset + # tb_idiap protocol subset = dataset.subsets("tb_idiap") assert len(subset) == 3 @@ -33,6 +33,8 @@ def test_protocol_consistency(): def test_loading(): + from ptbench.data.padchest_RS import dataset + def _check_sample(s): data = s.data -- GitLab