From 56e7fdd8d243745e7443d4788bd027f4d7b4e598 Mon Sep 17 00:00:00 2001 From: yucongalicechen Date: Thu, 20 Jun 2024 17:11:05 -0400 Subject: [PATCH 1/2] initial commit --- src/diffpy/labpdfproc/labpdfprocapp.py | 2 +- src/diffpy/labpdfproc/tests/test_tools.py | 13 +++++++------ src/diffpy/labpdfproc/tools.py | 7 ++++--- 3 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/diffpy/labpdfproc/labpdfprocapp.py b/src/diffpy/labpdfproc/labpdfprocapp.py index e141f9b..780effd 100644 --- a/src/diffpy/labpdfproc/labpdfprocapp.py +++ b/src/diffpy/labpdfproc/labpdfprocapp.py @@ -116,7 +116,7 @@ def main(): args = load_user_info(args) args = set_input_lists(args) args.output_directory = set_output_directory(args) - args.wavelength = set_wavelength(args) + args = set_wavelength(args) args = load_user_metadata(args) for filepath in args.input_paths: diff --git a/src/diffpy/labpdfproc/tests/test_tools.py b/src/diffpy/labpdfproc/tests/test_tools.py index 523b194..71cadb7 100644 --- a/src/diffpy/labpdfproc/tests/test_tools.py +++ b/src/diffpy/labpdfproc/tests/test_tools.py @@ -145,20 +145,21 @@ def test_set_output_directory_bad(user_filesystem): params2 = [ - ([], [0.71]), - (["--anode-type", "Ag"], [0.59]), - (["--wavelength", "0.25"], [0.25]), - (["--wavelength", "0.25", "--anode-type", "Ag"], [0.25]), + ([], [0.71, "Mo"]), + (["--anode-type", "Ag"], [0.59, "Ag"]), + (["--wavelength", "0.25"], [0.25, None]), + (["--wavelength", "0.25", "--anode-type", "Ag"], [0.25, None]), ] @pytest.mark.parametrize("inputs, expected", params2) def test_set_wavelength(inputs, expected): - expected_wavelength = expected[0] + expected_wavelength, expected_anode_type = expected[0], expected[1] cli_inputs = ["2.5", "data.xy"] + inputs actual_args = get_args(cli_inputs) - actual_args.wavelength = set_wavelength(actual_args) + actual_args = set_wavelength(actual_args) assert actual_args.wavelength == expected_wavelength + assert getattr(actual_args, "anode_type", None) == expected_anode_type params3 = [ diff --git a/src/diffpy/labpdfproc/tools.py b/src/diffpy/labpdfproc/tools.py index 124be2c..1461654 100644 --- a/src/diffpy/labpdfproc/tools.py +++ b/src/diffpy/labpdfproc/tools.py @@ -126,11 +126,12 @@ def set_wavelength(args): ) if args.wavelength: - return args.wavelength + delattr(args, "anode_type") elif args.anode_type: - return WAVELENGTHS[args.anode_type] + args.wavelength = WAVELENGTHS[args.anode_type] else: - return WAVELENGTHS["Mo"] + args.wavelength = WAVELENGTHS["Mo"] + return args def _load_key_value_pair(s): From 7324351ff932869ca3be69d12ef9c363729e412c Mon Sep 17 00:00:00 2001 From: yucongalicechen Date: Thu, 20 Jun 2024 17:12:24 -0400 Subject: [PATCH 2/2] tweak on bad cases --- src/diffpy/labpdfproc/tests/test_tools.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/diffpy/labpdfproc/tests/test_tools.py b/src/diffpy/labpdfproc/tests/test_tools.py index 71cadb7..779f7d0 100644 --- a/src/diffpy/labpdfproc/tests/test_tools.py +++ b/src/diffpy/labpdfproc/tests/test_tools.py @@ -183,7 +183,7 @@ def test_set_wavelength_bad(inputs, msg): cli_inputs = ["2.5", "data.xy"] + inputs actual_args = get_args(cli_inputs) with pytest.raises(ValueError, match=re.escape(msg[0])): - actual_args.wavelength = set_wavelength(actual_args) + actual_args = set_wavelength(actual_args) params5 = [