From ec6dcd711b408f80648612873c6fe94d363fe46d Mon Sep 17 00:00:00 2001 From: luandalmazo Date: Wed, 17 Jun 2026 11:05:11 -0300 Subject: [PATCH 1/2] update test_nnunet_trainer and fallback to base.py --- datamint/dataset/base.py | 4 ++-- tests/test_nnunet_trainer.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/datamint/dataset/base.py b/datamint/dataset/base.py index e789839d..a4351f8d 100644 --- a/datamint/dataset/base.py +++ b/datamint/dataset/base.py @@ -318,8 +318,8 @@ def prefetch(self, *, include_annotations: bool = False) -> None: _LOGGER.info("Prefetch complete.") def __getstate__(self) -> dict: - state = super().__getstate__() - # Strip _api (contains unpicklable connections) + get = getattr(super(), '__getstate__', None) + state = get() if get is not None else self.__dict__.copy() if '_api' in state: del state['_api'] return state diff --git a/tests/test_nnunet_trainer.py b/tests/test_nnunet_trainer.py index 5596f9f5..00386249 100644 --- a/tests/test_nnunet_trainer.py +++ b/tests/test_nnunet_trainer.py @@ -33,7 +33,7 @@ def perform_actual_validation(self, *a, **kw): pass def print_to_log_file(self, *a, **kw): pass submodules['nnunetv2.training.nnUNetTrainer.nnUNetTrainer'].nnUNetTrainer = _FakeNNUNetTrainer for name, mod in submodules.items(): - sys.modules.setdefault(name, mod) + sys.modules[name] = mod _mock_nnunetv2() From 79b581769d9d4abcb909a548bd1814beddf22d68 Mon Sep 17 00:00:00 2001 From: luandalmazo Date: Wed, 17 Jun 2026 11:15:17 -0300 Subject: [PATCH 2/2] update fake plan in test_nnunet_trainer --- tests/test_nnunet_trainer.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/tests/test_nnunet_trainer.py b/tests/test_nnunet_trainer.py index 00386249..1fcc1c48 100644 --- a/tests/test_nnunet_trainer.py +++ b/tests/test_nnunet_trainer.py @@ -94,9 +94,10 @@ def fake_fp(): def fake_plan(): (preprocessed_dir / 'nnUNetPlans.json').write_text('{}') - with patch('nnunetv2.experiment_planning.dataset_fingerprint' - '.fingerprint_extractor.DatasetFingerprintExtractor') as MockFP, \ - patch('nnunetv2.experiment_planning.experiment_planners.default_experiment_planner.ExperimentPlanner') as MockPlan: + fp_mod = sys.modules['nnunetv2.experiment_planning.dataset_fingerprint.fingerprint_extractor'] + plan_mod = sys.modules['nnunetv2.experiment_planning.experiment_planners.default_experiment_planner'] + with patch.object(fp_mod, 'DatasetFingerprintExtractor') as MockFP, \ + patch.object(plan_mod, 'ExperimentPlanner') as MockPlan: MockFP.return_value.run.side_effect = fake_fp MockPlan.return_value.plan_experiment.side_effect = fake_plan trainer._run_fingerprint_and_plan(dataset_id=1)