diff --git a/tests/test_score_flux/results.py b/tests/test_score_flux/results.py new file mode 100644 index 0000000000..f2f03137bf --- /dev/null +++ b/tests/test_score_flux/results.py @@ -0,0 +1,34 @@ +#!/usr/bin/env python + +import sys +import numpy as np + +# import statepoint +sys.path.append('../../src/utils') +import statepoint + +# read in statepoint file +sp = statepoint.StatePoint('statepoint.10.binary') +sp.read_results() + +# extract tally results and convert to vector +results = sp.tallies[0].results +shape = results.shape +size = (np.product(shape)) +results = np.reshape(results, size) + +# set up output string +outstr = '' + +# write out k-combined +outstr += 'k-combined:\n' +outstr += "{0:10.8f} {1:10.8f}\n".format(sp.k_combined[0], sp.k_combined[1]) + +# write out tally results +outstr += 'tallies:\n' +for item in results: + outstr += "{0:10.8f}\n".format(item) + +# write results to file +with open('results_test.dat','w') as fh: + fh.write(outstr) diff --git a/tests/test_score_flux/results_true.dat b/tests/test_score_flux/results_true.dat new file mode 100644 index 0000000000..ceb16548a5 --- /dev/null +++ b/tests/test_score_flux/results_true.dat @@ -0,0 +1,15 @@ +k-combined: +1.63626998 0.13749537 +tallies: +32.10026540 +207.48228702 +11.24489229 +25.58304331 +54.24279599 +593.34126048 +29.62576194 +179.38435850 +10.11137407 +20.92401335 +48.66868147 +486.42701474 diff --git a/tests/test_score_flux/test_score_flux.py b/tests/test_score_flux/test_score_flux.py index ca8daa9263..1cb3b704be 100644 --- a/tests/test_score_flux/test_score_flux.py +++ b/tests/test_score_flux/test_score_flux.py @@ -2,6 +2,7 @@ import os from subprocess import Popen, STDOUT, PIPE +import filecmp pwd = os.path.dirname(__file__) @@ -21,8 +22,16 @@ def test_statepoint_exists(): def test_output_exists(): assert os.path.exists(pwd + '/tallies.out') +def test_results(): + os.system('python results.py') + compare = filecmp.cmp('results_test.dat', 'results_true.dat') + if not compare: + os.system('cp results_test.dat results_error.dat') + assert compare + def teardown(): - output = [pwd + '/statepoint.10.binary', pwd + '/tallies.out'] + output = [pwd + '/statepoint.10.binary', pwd + '/tallies.out', + pwd + '/results_test.dat'] for f in output: if os.path.exists(f): os.remove(f)