refactor: io tests split up in several files

This commit is contained in:
Fabian Joswig 2022-02-09 14:05:44 +00:00
parent f16ba109fc
commit 7568275d5d
2 changed files with 49 additions and 45 deletions

View file

@ -242,48 +242,3 @@ def test_json_dict_io():
jsonio.dump_dict_to_json(od, fname, description=desc)
os.remove(fname + '.json.gz')
def test_openqcd():
path = './tests//data/openqcd_test/'
prefix = 'sfqcd'
postfix = '.rwms'
# sfqcd-1.6: Trajectories instead of confignumbers are printed to file.
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix)
repname = list(rwfo[0].idl.keys())[0]
assert(rwfo[0].idl[repname] == range(1, 13))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[1], r_stop=[12])
assert(rwfo[0].idl[repname] == range(1, 13))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[3], r_stop=[8])
assert(rwfo[0].idl[repname] == range(3, 9))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[2], r_stop=[6])
assert(rwfo[0].idl[repname] == range(2, 7))
rwfs = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[1], r_stop=[12], r_step=2)
assert(rwfs[0].idl[repname] == range(1, 12, 2))
rwfs = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[2], r_stop=[12], r_step=2)
assert(rwfs[0].idl[repname] == range(2, 13, 2))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix)
assert((rwfo[0].r_values[repname] + rwfo[0].deltas[repname][1]) == (rwfs[0].r_values[repname] + rwfs[0].deltas[repname][0]))
o = pe.pseudo_Obs(1., .01, repname, samples=12)
pe.reweight(rwfo[0], [o])
o = pe.pseudo_Obs(1., .01, repname, samples=6)
pe.reweight(rwfo[0], [o])
o.idl[repname] = range(2, 13, 2)
pe.reweight(rwfo[0], [o])
pe.reweight(rwfs[0], [o])
files = ['openqcd2r1.ms1.dat']
names = ['openqcd2|r1']
# TM with 2 Hasenbusch factors and 2 sources each + RHMC with one source, openQCD 2.0
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='2.0', files=files, names=names)
assert(len(rwfo) == 2)
assert(rwfo[0].value == 0.9999974970236312)
assert(rwfo[1].value == 1.184681251089919)
repname = list(rwfo[0].idl.keys())[0]
assert(rwfo[0].idl[repname] == range(1, 10))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='2.0', files=files, names=names, r_start=[1], r_stop=[8])
assert(rwfo[0].idl[repname] == range(1, 9))

49
tests/openQCD_in_test.py Normal file
View file

@ -0,0 +1,49 @@
import os
import numpy as np
import pyerrors as pe
import pytest
def test_openqcd():
path = './tests//data/openqcd_test/'
prefix = 'sfqcd'
postfix = '.rwms'
# sfqcd-1.6: Trajectories instead of confignumbers are printed to file.
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix)
repname = list(rwfo[0].idl.keys())[0]
assert(rwfo[0].idl[repname] == range(1, 13))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[1], r_stop=[12])
assert(rwfo[0].idl[repname] == range(1, 13))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[3], r_stop=[8])
assert(rwfo[0].idl[repname] == range(3, 9))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[2], r_stop=[6])
assert(rwfo[0].idl[repname] == range(2, 7))
rwfs = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[1], r_stop=[12], r_step=2)
assert(rwfs[0].idl[repname] == range(1, 12, 2))
rwfs = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix, r_start=[2], r_stop=[12], r_step=2)
assert(rwfs[0].idl[repname] == range(2, 13, 2))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='1.6', postfix=postfix)
assert((rwfo[0].r_values[repname] + rwfo[0].deltas[repname][1]) == (rwfs[0].r_values[repname] + rwfs[0].deltas[repname][0]))
o = pe.pseudo_Obs(1., .01, repname, samples=12)
pe.reweight(rwfo[0], [o])
o = pe.pseudo_Obs(1., .01, repname, samples=6)
pe.reweight(rwfo[0], [o])
o.idl[repname] = range(2, 13, 2)
pe.reweight(rwfo[0], [o])
pe.reweight(rwfs[0], [o])
files = ['openqcd2r1.ms1.dat']
names = ['openqcd2|r1']
# TM with 2 Hasenbusch factors and 2 sources each + RHMC with one source, openQCD 2.0
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='2.0', files=files, names=names)
assert(len(rwfo) == 2)
assert(rwfo[0].value == 0.9999974970236312)
assert(rwfo[1].value == 1.184681251089919)
repname = list(rwfo[0].idl.keys())[0]
assert(rwfo[0].idl[repname] == range(1, 10))
rwfo = pe.input.openQCD.read_rwms(path, prefix, version='2.0', files=files, names=names, r_start=[1], r_stop=[8])
assert(rwfo[0].idl[repname] == range(1, 9))