blob: 2b12baacfe85aceab6e8ea71cd8c7d47c2c4c08d [file] [log] [blame]
import toml, os, json, sys
def _testbench_literal(type, text):
_type_table = {'str': 'string', 'int': 'integer'}
return {'type': _type_table.get(type, type), 'value': text}
def _testbench_array(values):
return {'type': 'array', 'value': values}
def _main():
succeeded = []
failed = []
for top, dirnames, fnames in os.walk('test'):
for fname in fnames:
if not fname.endswith('.toml'):
continue
try:
with open(os.path.join(top, fname), 'rb') as fin:
parsed = toml.load(fin, _testbench_literal, _testbench_array)
except toml.TomlError:
parsed = None
try:
with open(os.path.join(top, fname[:-5] + '.json'), 'rb') as fin:
bench = json.load(fin)
except IOError:
bench = None
if parsed != bench:
failed.append(fname)
else:
succeeded.append(fname)
for f in failed:
print 'failed: {f}'.format(f=f)
print 'succeeded: {succ}'.format(succ=len(succeeded))
return 1 if failed else 0
if __name__ == '__main__':
sys.exit(_main())