From 73b2f46df52bf51a26dbbde4719605cfddc62acc Mon Sep 17 00:00:00 2001 From: Sangjoon Bob Lee Date: Wed, 11 Dec 2024 21:56:38 -0500 Subject: [PATCH] Remove unused test util func, fix test for comparing two objects --- tests/test_diffraction_objects.py | 48 ++----------------------------- 1 file changed, 3 insertions(+), 45 deletions(-) diff --git a/tests/test_diffraction_objects.py b/tests/test_diffraction_objects.py index dcdd4f59..a8678fd8 100644 --- a/tests/test_diffraction_objects.py +++ b/tests/test_diffraction_objects.py @@ -8,43 +8,6 @@ from diffpy.utils.diffraction_objects import XQUANTITIES, DiffractionObject - -def compare_dicts(dict1, dict2): - assert dict1.keys() == dict2.keys(), "Keys mismatch" - for key in dict1: - val1, val2 = dict1[key], dict2[key] - if isinstance(val1, np.ndarray) and isinstance(val2, np.ndarray): - assert np.allclose(val1, val2), f"Arrays for key '{key}' differ" - elif isinstance(val1, np.float64) and isinstance(val2, np.float64): - assert np.isclose(val1, val2), f"Float64 values for key '{key}' differ" - else: - assert val1 == val2, f"Values for key '{key}' differ: {val1} != {val2}" - - -def dicts_equal(dict1, dict2): - equal = True - print("") - print(dict1) - print(dict2) - if not dict1.keys() == dict2.keys(): - equal = False - for key in dict1: - val1, val2 = dict1[key], dict2[key] - if isinstance(val1, np.ndarray) and isinstance(val2, np.ndarray): - if not np.allclose(val1, val2): - equal = False - elif isinstance(val1, list) and isinstance(val2, list): - if not val1.all() == val2.all(): - equal = False - elif isinstance(val1, np.float64) and isinstance(val2, np.float64): - if not np.isclose(val1, val2): - equal = False - else: - if not val1 == val2: - equal = False - return equal - - params = [ ( # Default {}, @@ -193,14 +156,9 @@ def dicts_equal(dict1, dict2): @pytest.mark.parametrize("inputs1, inputs2, expected", params) def test_diffraction_objects_equality(inputs1, inputs2, expected): - diffraction_object1 = DiffractionObject(**inputs1) - diffraction_object2 = DiffractionObject(**inputs2) - # diffraction_object1_attributes = [key for key in diffraction_object1.__dict__ if not key.startswith("_")] - # for i, attribute in enumerate(diffraction_object1_attributes): - # setattr(diffraction_object1, attribute, inputs1[i]) - # setattr(diffraction_object2, attribute, inputs2[i]) - print(dicts_equal(diffraction_object1.__dict__, diffraction_object2.__dict__), expected) - assert dicts_equal(diffraction_object1.__dict__, diffraction_object2.__dict__) == expected + do_1 = DiffractionObject(**inputs1) + do_2 = DiffractionObject(**inputs2) + assert (do_1 == do_2) == expected def test_on_xtype():