diff --git a/tests/run_regression_test.py b/tests/run_regression_test.py deleted file mode 100644 index c7ad0367..00000000 --- a/tests/run_regression_test.py +++ /dev/null @@ -1,134 +0,0 @@ -def read_expected(test_name="Test_hmc_Sp_WilsonFundFermionGauge", grid="8.8.8.8", mpi="1.1.1.1"): - """ - Read expected values from file. - - The file contains one or more entries of the following format: - - Eg. - 8.8.8.8 1.1.1.1 0.0256253844 922c392f d1e4cc1c - """ - - with open(f"{test_name}_expected.txt") as file: - for line in file: - line_split = line.split() - if line_split[0] == grid and line_split[1] == mpi: - return float(line_split[2]), line_split[3], line_split[4] - - -def read_output(): - """ - Read test output and fish out values of interest. - """ - - checksum_rng = None - checksum_lat = None - plaquette = None - with open("output.txt", 'r') as file: - for line in file: - if "Written NERSC" in line: - subline = line.split('checksum ')[1] - if len(subline.split()) == 1: # this is the rng checksum line - checksum_rng = subline.strip() - elif len(subline.split()) == 3: # this is the lat checksum and plaquette value line - checksum_lat = subline.split()[0] - plaquette = float(subline.split()[2]) - else: - print("Picked wrong line...") - - if (checksum_rng is None) or (checksum_lat is None) or (plaquette is None): - print("Error reading values from output file. Make sure you compile the test with CPparams.saveInterval=1 in order to produce the required output.") - exit(1) - - return plaquette, checksum_rng, checksum_lat - - -def compare(actual, expected, what, stop=False): - """ - Compare actual with expected output, and output message if failed. - """ - - if actual != expected: - print(f"{what} comparison failed: actual={actual} , expected={expected}") - if stop: - exit(1) - else: - return False - return True - - - -if __name__ == '__main__': - import argparse - import subprocess - import os - - parser = argparse.ArgumentParser(description='Run end-to-end tests and compare results with expectations.') - parser.add_argument("test_name", help="File name of the test") - parser.add_argument("grid", help="Grid configuration") - parser.add_argument("mpi", help="MPI configuration") - parser.add_argument("-s", "--stop", action='store_true', help="Flag to stop testing when a test fails.") - args = parser.parse_args() - - expected_plaquette, expected_checksum_rng, expected_checksum_lat = read_expected(args.test_name, args.grid, args.mpi) - - result = subprocess.run([f"./{args.test_name} --grid {args.grid} --mpi {args.mpi} --Thermalizations 0 --Trajectories 1 > output.txt"], shell=True, encoding="text") - plaquette, checksum_rng, checksum_lat = read_output() - - print(f"Running {args.test_name}") - result = compare(plaquette, expected_plaquette, "plaquette", args.stop) - result = result and compare(checksum_rng, expected_checksum_rng, "Checksum RNG file ", args.stop) - result = result and compare(checksum_lat, expected_checksum_lat, "Checksum LAT file ", args.stop) - if result: - print("All tests passed!") - else: - print("Some tests failed...") - - os.remove("output.txt") - os.remove("ckpoint_rng.1") - os.remove("ckpoint_lat.1") - -#result = subprocess.run(["./Test_hmc_Sp_WilsonFundFermionGauge --grid 8.8.8.8 --mpi 1.1.1.1 --Thermalizations 0 --Trajectories 1 > output1.txt"], shell=True, encoding="text") - -# expected_value = 0.0256253844 -# checksum_rng = "922c392f" -# checksum_lat = "d1e4cc1c" - -# with open("output1.txt", 'r') as file: -# for line in file: -# # if "Plaquette" in line: -# # #print(line) -# # plaquette_value = float(line.split('] ')[1]) -# # #print(plaquette_value) -# # if plaquette_value == expected_value: -# # print("Success!") -# if "Written NERSC" in line: -# print(line) -# subline = line.split('checksum ')[1] -# if len(subline.split()) == 1: # this is the rng checksum line -# print(subline) -# if subline.strip() == checksum_rng: -# print("RNG file checksum success!") -# else: -# print("RNG file checksum failed!") -# elif len(subline.split()) == 3: # this is the lat checksum and plaquette value line -# print(subline) -# checksum_value = subline.split()[0] -# plaquette_value = float(subline.split()[2]) -# print(checksum_value, plaquette_value) -# if checksum_value == checksum_lat: -# print("LAT file checksum success!") -# else: -# print("LAT file checksum failed!") -# if plaquette_value == expected_value: -# print("Plaquette value success!") -# else: -# print("Plaquette value failed!") -# else: -# print("Picked wrong line...") - - -#loc1 = result.find("Plaquette") -#print(loc1) -#loc2 = result.find("Smeared") -#print(loc2) -#print(result[loc1,loc2]) diff --git a/tests/sp2n/Test_hmc_Sp_WilsonFundFermionGauge_expected.txt b/tests/sp2n/Test_hmc_Sp_WilsonFundFermionGauge_expected.txt deleted file mode 100644 index 7edc6fa0..00000000 --- a/tests/sp2n/Test_hmc_Sp_WilsonFundFermionGauge_expected.txt +++ /dev/null @@ -1 +0,0 @@ -8.8.8.8 1.1.1.1 0.0256253844 922c392f d1e4cc1c