From ada9157a2264592343c8ef97d19cd8c4c99a488a Mon Sep 17 00:00:00 2001 From: Alison Wu Date: Tue, 12 Nov 2024 11:02:46 -0500 Subject: [PATCH 1/5] restructure tests dir to match src --- tests/{ => diffpy/utils/parsers}/test_loaddata.py | 0 tests/{ => diffpy/utils/parsers}/test_serialization.py | 0 .../utils/scattering_objects}/test_diffraction_objects.py | 0 tests/{ => diffpy/utils}/test_resample.py | 0 tests/{ => diffpy/utils}/test_tools.py | 0 tests/{ => diffpy/utils}/test_version.py | 0 6 files changed, 0 insertions(+), 0 deletions(-) rename tests/{ => diffpy/utils/parsers}/test_loaddata.py (100%) rename tests/{ => diffpy/utils/parsers}/test_serialization.py (100%) rename tests/{ => diffpy/utils/scattering_objects}/test_diffraction_objects.py (100%) rename tests/{ => diffpy/utils}/test_resample.py (100%) rename tests/{ => diffpy/utils}/test_tools.py (100%) rename tests/{ => diffpy/utils}/test_version.py (100%) diff --git a/tests/test_loaddata.py b/tests/diffpy/utils/parsers/test_loaddata.py similarity index 100% rename from tests/test_loaddata.py rename to tests/diffpy/utils/parsers/test_loaddata.py diff --git a/tests/test_serialization.py b/tests/diffpy/utils/parsers/test_serialization.py similarity index 100% rename from tests/test_serialization.py rename to tests/diffpy/utils/parsers/test_serialization.py diff --git a/tests/test_diffraction_objects.py b/tests/diffpy/utils/scattering_objects/test_diffraction_objects.py similarity index 100% rename from tests/test_diffraction_objects.py rename to tests/diffpy/utils/scattering_objects/test_diffraction_objects.py diff --git a/tests/test_resample.py b/tests/diffpy/utils/test_resample.py similarity index 100% rename from tests/test_resample.py rename to tests/diffpy/utils/test_resample.py diff --git a/tests/test_tools.py b/tests/diffpy/utils/test_tools.py similarity index 100% rename from tests/test_tools.py rename to tests/diffpy/utils/test_tools.py diff --git a/tests/test_version.py b/tests/diffpy/utils/test_version.py similarity index 100% rename from tests/test_version.py rename to tests/diffpy/utils/test_version.py From b7f9ff24ba3c64f7d7358031d060f8da018b0d3d Mon Sep 17 00:00:00 2001 From: Alison Wu Date: Tue, 12 Nov 2024 11:25:20 -0500 Subject: [PATCH 2/5] fixed file paths in test files for the changed tests structure --- tests/conftest.py | 3 ++- tests/diffpy/utils/parsers/test_serialization.py | 9 ++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 5471acc1..b1783f57 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -22,8 +22,9 @@ def user_filesystem(tmp_path): @pytest.fixture def datafile(): """Fixture to dynamically load any test file.""" + base_path = Path(__file__).parent / "testdata" # Adjusted base path def _load(filename): - return "tests/testdata/" + filename + return str(base_path / filename) return _load diff --git a/tests/diffpy/utils/parsers/test_serialization.py b/tests/diffpy/utils/parsers/test_serialization.py index fc3696bf..97f01c9b 100644 --- a/tests/diffpy/utils/parsers/test_serialization.py +++ b/tests/diffpy/utils/parsers/test_serialization.py @@ -7,20 +7,19 @@ from diffpy.utils.parsers.loaddata import loadData from diffpy.utils.parsers.serialization import deserialize_data, serialize_data -tests_dir = os.path.dirname(os.path.abspath(locals().get("__file__", "file.py"))) - def test_load_multiple(tmp_path, datafile): # Load test data targetjson = datafile("targetjson.json") generatedjson = tmp_path / "generated_serialization.json" - tlm_list = os.listdir(os.path.join(tests_dir, "testdata", "dbload")) - tlm_list.sort() + dbload_dir = os.path.dirname(datafile("dbload/e1.gr")) + tlm_list = sorted(os.listdir(dbload_dir)) + generated_data = None for hfname in tlm_list: # gather data using loadData - headerfile = os.path.normpath(os.path.join(tests_dir, "testdata", "dbload", hfname)) + headerfile = os.path.join(dbload_dir, hfname) hdata = loadData(headerfile, headers=True) data_table = loadData(headerfile) From 116f5c5f9db17fe8f9becde18dbcd87e3ab77875 Mon Sep 17 00:00:00 2001 From: Alison Wu Date: Tue, 12 Nov 2024 11:27:01 -0500 Subject: [PATCH 3/5] add news item --- news/tests-restruct.rst | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 news/tests-restruct.rst diff --git a/news/tests-restruct.rst b/news/tests-restruct.rst new file mode 100644 index 00000000..4b28c56f --- /dev/null +++ b/news/tests-restruct.rst @@ -0,0 +1,23 @@ +**Added:** + +* + +**Changed:** + +* \tests directory tree to match \src + +**Deprecated:** + +* + +**Removed:** + +* + +**Fixed:** + +* file paths of the test files according to new \tests directory tree + +**Security:** + +* From 9e292035f0f445a4c8803c62c023a79dacf99de3 Mon Sep 17 00:00:00 2001 From: Alison Wu Date: Tue, 12 Nov 2024 21:25:42 -0500 Subject: [PATCH 4/5] used pathlib Path --- tests/conftest.py | 2 +- tests/diffpy/utils/parsers/test_serialization.py | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index b1783f57..09de40f6 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -25,6 +25,6 @@ def datafile(): base_path = Path(__file__).parent / "testdata" # Adjusted base path def _load(filename): - return str(base_path / filename) + return base_path / filename return _load diff --git a/tests/diffpy/utils/parsers/test_serialization.py b/tests/diffpy/utils/parsers/test_serialization.py index 97f01c9b..cc205c43 100644 --- a/tests/diffpy/utils/parsers/test_serialization.py +++ b/tests/diffpy/utils/parsers/test_serialization.py @@ -1,4 +1,5 @@ import os +from pathlib import Path import numpy import pytest @@ -13,19 +14,18 @@ def test_load_multiple(tmp_path, datafile): targetjson = datafile("targetjson.json") generatedjson = tmp_path / "generated_serialization.json" - dbload_dir = os.path.dirname(datafile("dbload/e1.gr")) - tlm_list = sorted(os.listdir(dbload_dir)) + dbload_dir = datafile("dbload") + tlm_list = sorted(dbload_dir.glob("*.gr")) generated_data = None - for hfname in tlm_list: + for headerfile in tlm_list: # gather data using loadData - headerfile = os.path.join(dbload_dir, hfname) hdata = loadData(headerfile, headers=True) data_table = loadData(headerfile) # check path extraction generated_data = serialize_data(headerfile, hdata, data_table, dt_colnames=["r", "gr"], show_path=True) - assert headerfile == os.path.normpath(generated_data[hfname].pop("path")) + assert headerfile == Path(generated_data[headerfile.name].pop("path")) # rerun without path information and save to file generated_data = serialize_data( From 68841b97bd121139720de70cbc84eb7138387a77 Mon Sep 17 00:00:00 2001 From: Alison Wu Date: Tue, 12 Nov 2024 21:27:49 -0500 Subject: [PATCH 5/5] fixed pre-commit error --- tests/diffpy/utils/parsers/test_serialization.py | 1 - 1 file changed, 1 deletion(-) diff --git a/tests/diffpy/utils/parsers/test_serialization.py b/tests/diffpy/utils/parsers/test_serialization.py index cc205c43..0ba397ad 100644 --- a/tests/diffpy/utils/parsers/test_serialization.py +++ b/tests/diffpy/utils/parsers/test_serialization.py @@ -1,4 +1,3 @@ -import os from pathlib import Path import numpy