Skip to content

Commit cd38713

Browse files
committed
update test
1 parent 7946d9d commit cd38713

File tree

1 file changed

+31
-6
lines changed

1 file changed

+31
-6
lines changed

tests/unit/persistence/imzml/test_imzml_read_file.py

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
from pytest_mock import MockerFixture
99

1010
from depiction.persistence import ImzmlReadFile, ImzmlModeEnum
11+
from depiction.persistence.imzml.parser.parse_spectra import ParseSpectra
1112
from depiction.persistence.pixel_size import PixelSize
1213

1314

@@ -77,14 +78,38 @@ def test_reader_when_exception(mocker: MockerFixture, mock_read_file: ImzmlReadF
7778

7879

7980
def test_get_reader(mocker: MockerFixture, mock_path: Path, mock_read_file: ImzmlReadFile) -> None:
80-
mock_reader = mocker.MagicMock(name="mock_reader", mzPrecision="d", intensityPrecision="i")
81-
mock_imzml_parser = mocker.patch("pyimzml.ImzMLParser.ImzMLParser")
82-
mock_imzml_parser.return_value.__enter__.return_value.portable_spectrum_reader.return_value = mock_reader
81+
mock_etree = mocker.patch("depiction.persistence.imzml.imzml_reader.ElementTree").return_value
82+
mock_parse_spectra = mocker.MagicMock(name="mock_parse_spectra", spec=ParseSpectra)
83+
construct_parse_spectra = mocker.patch(
84+
"depiction.persistence.imzml.imzml_reader.ParseSpectra", return_value=mock_parse_spectra
85+
)
86+
c1 = mocker.MagicMock(name="c1", value="c1")
87+
c2 = mocker.MagicMock(name="c2", value="c2")
88+
f32 = mocker.MagicMock(name="f32", value="float32")
89+
f64 = mocker.MagicMock(name="f64", value="float64")
90+
mock_parse_spectra.parse.return_value = [
91+
mocker.MagicMock(
92+
mz_arr=mocker.MagicMock(offset=1, encoded_length=2, data_type=f32, mz_compression=c1),
93+
int_arr=mocker.MagicMock(offset=3, encoded_length=4, data_type=f64, int_compression=c2),
94+
position=(5, 6),
95+
),
96+
mocker.MagicMock(
97+
mz_arr=mocker.MagicMock(offset=6, encoded_length=7, data_type=f32, mz_compression=c1),
98+
int_arr=mocker.MagicMock(offset=8, encoded_length=9, data_type=f64, int_compression=c2),
99+
position=(10, 11),
100+
),
101+
]
102+
83103
reader = mock_read_file.get_reader()
84-
mock_imzml_parser.assert_called_once_with(mock_path)
85104
assert reader.imzml_path == Path(mock_read_file._path)
86-
assert reader._mz_bytes == 8
87-
assert reader._int_bytes == 4
105+
assert reader._mz_arr_offsets == [1, 6]
106+
assert reader._mz_bytes == 4
107+
assert reader._mz_arr_dtype == "float32"
108+
assert reader._int_bytes == 8
109+
assert reader._int_arr_dtype == "float64"
110+
np.testing.assert_array_equal(reader._coordinates, np.array([[5, 6], [10, 11]]))
111+
112+
construct_parse_spectra.assert_called_once_with(etree=mock_etree)
88113

89114

90115
def test_n_spectra(mocker: MockerFixture, mock_read_file: ImzmlReadFile) -> None:

0 commit comments

Comments
 (0)