Skip to content

Commit 7ed1ec5

Browse files
committed
saveResults deprecation
1 parent a374692 commit 7ed1ec5

4 files changed

Lines changed: 58 additions & 5 deletions

File tree

docs/examples/simplepdf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ def makeRecipe(ciffile, datname):
8383
# Generate, print and save the FitResults
8484
res = FitResults(recipe)
8585
res.print_results()
86-
res.saveResults("nickel_example.res")
86+
res.save_results("nickel_example.res")
8787

8888
# Plot!
8989
plotResults(recipe)

src/diffpy/srfit/fitbase/fitresults.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,13 @@
5050
removal_version,
5151
)
5252

53+
saveResults_dep_msg = build_deprecation_message(
54+
fitresults_base,
55+
"saveResults",
56+
"save_results",
57+
removal_version,
58+
)
59+
5360

5461
class FitResults(object):
5562
"""Class for processing, presenting and storing results of a fit.
@@ -345,7 +352,7 @@ def _calculate_constraint_uncertainties(self):
345352
def get_results_string(self, header="", footer="", update=False):
346353
"""Format the results and return them in a string.
347354
348-
This function is called by print_results and saveResults. Overloading
355+
This function is called by print_results and save_results. Overloading
349356
the formatting here will change all three functions.
350357
351358
Parameters
@@ -573,7 +580,7 @@ def printResults(self, header="", footer="", update=False):
573580
def __str__(self):
574581
return self.get_results_string()
575582

576-
def saveResults(self, filename, header="", footer="", update=False):
583+
def save_results(self, filename, header="", footer="", update=False):
577584
"""Format and save the results.
578585
579586
Parameters
@@ -601,6 +608,17 @@ def saveResults(self, filename, header="", footer="", update=False):
601608
f.close()
602609
return
603610

611+
@deprecated(saveResults_dep_msg)
612+
def saveResults(self, filename, header="", footer="", update=False):
613+
"""This function has been deprecated and will be removed in version
614+
4.0.0.
615+
616+
Please use diffpy.srfit.fitbase.FitResults.save_results
617+
instead.
618+
"""
619+
self.save_results(filename, header, footer, update)
620+
return
621+
604622

605623
# End class FitResults
606624

src/diffpy/srfit/fitbase/simplerecipe.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,13 @@
6565
removal_version,
6666
)
6767

68+
saveResults_dep_msg = build_deprecation_message(
69+
base,
70+
"saveResults",
71+
"save_results",
72+
removal_version,
73+
)
74+
6875

6976
class SimpleRecipe(FitRecipe):
7077
"""SimpleRecipe class.
@@ -366,7 +373,7 @@ def printResults(self, header="", footer=""):
366373
self.print_results(header, footer)
367374
return
368375

369-
def saveResults(self, filename, header="", footer=""):
376+
def save_results(self, filename, header="", footer=""):
370377
"""Format and save the results.
371378
372379
Parameters
@@ -378,7 +385,18 @@ def saveResults(self, filename, header="", footer=""):
378385
footer
379386
A footer to add to the output (default "")
380387
"""
381-
self.results.saveResults(filename, header, footer, True)
388+
self.results.save_results(filename, header, footer, True)
389+
390+
@deprecated(saveResults_dep_msg)
391+
def saveResults(self, filename, header="", footer=""):
392+
"""This function has been deprecated and will be removed in version
393+
4.0.0.
394+
395+
Please use
396+
diffpy.srfit.fitbase.SimpleRecipe.save_results
397+
instead.
398+
"""
399+
self.save_results(filename, header, footer)
382400

383401

384402
# End class SimpleRecipe

tests/test_fitresults.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,23 @@ def test_saveResults(build_recipe_one_contribution, tmp_path):
121121
assert expected_var in actual_results.strip()
122122

123123

124+
def test_save_results(build_recipe_one_contribution, tmp_path):
125+
recipe = build_recipe_one_contribution
126+
optimize_recipe(recipe)
127+
results = FitResults(recipe)
128+
actual_results_file = tmp_path / "fit_results.txt"
129+
results.save_results(actual_results_file, header="My Custom header")
130+
assert actual_results_file.exists()
131+
with open(actual_results_file, "r") as res_file:
132+
actual_results = res_file.read()
133+
# Because slight variations in refinement, just check
134+
# that the header of the results are the same.
135+
assert expected_fitresults.strip() in actual_results.strip()
136+
# check if the refined variables are in the results
137+
for expected_var in expected_refined_variables:
138+
assert expected_var in actual_results.strip()
139+
140+
124141
def testInitializeFromFileName(datafile):
125142
recipe = FitRecipe("recipe")
126143
recipe.create_new_variable("A", 0)

0 commit comments

Comments
 (0)