From 330a533576d08ee7eda268768248bb73ef7d1747 Mon Sep 17 00:00:00 2001
From: Christopher Rhodes <christopher.rhodes@embl.de>
Date: Fri, 5 Jul 2024 12:34:07 +0200
Subject: [PATCH] Adapted to dictionary representation of test data

---
 tests/base/test_accessors.py |  5 +++--
 tests/base/test_api.py       |  9 +++++----
 tests/base/test_model.py     |  4 +++-
 tests/base/test_roiset.py    | 18 +++++++++++-------
 tests/base/test_workflow.py  |  4 +++-
 5 files changed, 25 insertions(+), 15 deletions(-)

diff --git a/tests/base/test_accessors.py b/tests/base/test_accessors.py
index f28a03a2..540f2121 100644
--- a/tests/base/test_accessors.py
+++ b/tests/base/test_accessors.py
@@ -4,10 +4,11 @@ import numpy as np
 
 from model_server.base.accessors import PatchStack, make_patch_stack_from_file, FileNotFoundError
 
-from tests.base.conf import meta, output_path
+from tests.base import conf
 from model_server.base.accessors import CziImageFileAccessor, DataShapeError, generate_file_accessor, InMemoryDataAccessor, PngFileAccessor, write_accessor_data_to_file, TifSingleSeriesFileAccessor
 
-data = meta['image_files']
+data = conf.meta['image_files']
+output_path = conf.output_path
 
 def _random_int(*args):
     return np.random.randint(0, 2 ** 8, size=args, dtype='uint8')
diff --git a/tests/base/test_api.py b/tests/base/test_api.py
index 614a1416..b8d406e8 100644
--- a/tests/base/test_api.py
+++ b/tests/base/test_api.py
@@ -1,8 +1,9 @@
 from pathlib import Path
 
 from base.util import TestServerBaseClass
-from tests.base._conf import czifile
+from tests.base import conf
 
+czifile = conf.meta['image_files']['czifile']
 
 class TestApiFromAutomatedClient(TestServerBaseClass):
 
@@ -11,10 +12,10 @@ class TestApiFromAutomatedClient(TestServerBaseClass):
 
         resp = self._get('paths')
         pa = resp.json()['inbound_images']
-        outpath = Path(pa) / czifile['filename']
+        outpath = Path(pa) / czifile['name']
         copyfile(
             czifile['path'],
-            outpath
+            Path(pa) / czifile['name']
         )
 
     def test_trivial_api_response(self):
@@ -86,7 +87,7 @@ class TestApiFromAutomatedClient(TestServerBaseClass):
             f'workflows/segment',
             query={
                 'model_id': model_id,
-                'input_filename': czifile['filename'],
+                'input_filename': czifile['name'],
                 'channel': 2,
             },
         )
diff --git a/tests/base/test_model.py b/tests/base/test_model.py
index 3d3f2127..ce0159e7 100644
--- a/tests/base/test_model.py
+++ b/tests/base/test_model.py
@@ -1,8 +1,10 @@
 import unittest
-from tests.base._conf import czifile
+from tests.base import conf
 from model_server.base.accessors import CziImageFileAccessor
 from model_server.base.models import DummySemanticSegmentationModel, DummyInstanceSegmentationModel, CouldNotLoadModelError
 
+czifile = conf.meta['image_files']['czifile']
+
 class TestCziImageFileAccess(unittest.TestCase):
     def setUp(self) -> None:
         self.cf = CziImageFileAccessor(czifile['path'])
diff --git a/tests/base/test_roiset.py b/tests/base/test_roiset.py
index cf5b225e..532b0753 100644
--- a/tests/base/test_roiset.py
+++ b/tests/base/test_roiset.py
@@ -6,20 +6,24 @@ from pathlib import Path
 
 import pandas as pd
 
-from tests.base._conf import output_path, roiset_test_data
+from tests.base import conf
 
 from model_server.base.roiset import RoiSetExportParams, RoiSetMetaParams
 from model_server.base.roiset import RoiSet
 from model_server.base.accessors import generate_file_accessor, InMemoryDataAccessor, write_accessor_data_to_file, PatchStack
 from model_server.base.models import DummyInstanceSegmentationModel
 
+data = conf.meta['image_files']
+output_path = conf.output_path
+params = conf.meta['roiset']
+
 class BaseTestRoiSetMonoProducts(object):
 
     def setUp(self) -> None:
         # set up test raw data and segmentation from file
-        self.stack = generate_file_accessor(roiset_test_data['multichannel_zstack']['path'])
-        self.stack_ch_pa = self.stack.get_mono(roiset_test_data['pipeline_params']['patches_channel'])
-        self.seg_mask = generate_file_accessor(roiset_test_data['multichannel_zstack']['mask_path'])
+        self.stack = generate_file_accessor(data['multichannel_zstack_raw']['path'])
+        self.stack_ch_pa = self.stack.get_mono(params['patches_channel'])
+        self.seg_mask = generate_file_accessor(data['multichannel_zstack_mask2d']['path'])
 
 
 class TestRoiSetMonoProducts(BaseTestRoiSetMonoProducts, unittest.TestCase):
@@ -523,9 +527,9 @@ class TestRoiSetSerialization(unittest.TestCase):
 
     def setUp(self) -> None:
         # set up test raw data and segmentation from file
-        self.stack = generate_file_accessor(roiset_test_data['multichannel_zstack']['path'])
-        self.stack_ch_pa = self.stack.get_mono(roiset_test_data['pipeline_params']['segmentation_channel'])
-        self.seg_mask_3d = generate_file_accessor(roiset_test_data['multichannel_zstack']['mask_path_3d'])
+        self.stack = generate_file_accessor(data['multichannel_zstack_raw']['path'])
+        self.stack_ch_pa = self.stack.get_mono(params['segmentation_channel'])
+        self.seg_mask_3d = generate_file_accessor(data['multichannel_zstack_mask3d']['path'])
 
     @staticmethod
     def _label_is_2d(id_map, la):  # single label's zmask has same counts as its MIP
diff --git a/tests/base/test_workflow.py b/tests/base/test_workflow.py
index 6fad521e..c0f857ef 100644
--- a/tests/base/test_workflow.py
+++ b/tests/base/test_workflow.py
@@ -1,9 +1,11 @@
 import unittest
 
-from tests.base._conf import czifile, output_path
+from tests.base import conf
 from model_server.base.models import DummySemanticSegmentationModel
 from model_server.base.workflows import classify_pixels
 
+czifile = conf.meta['image_files']['czifile']
+output_path = conf.output_path
 
 class TestGetSessionObject(unittest.TestCase):
     def setUp(self) -> None:
-- 
GitLab