mirror of
https://github.com/SimoneN64/Kaizen.git
synced 2025-04-02 10:41:53 -04:00
30 lines
851 B
Python
30 lines
851 B
Python
#!/usr/bin/env python3
|
|
import argparse
|
|
import difflib
|
|
import re
|
|
import subprocess
|
|
import sys
|
|
|
|
|
|
def stdout_cmp(f1, f2):
|
|
def lines_run(xs):
|
|
out = subprocess.run(xs, stdout=subprocess.PIPE, check=True).stdout.decode()
|
|
lines = out.splitlines(keepends=True)
|
|
return out, [re.sub(r'([\t ])', '', ln) for ln in lines]
|
|
|
|
out1, lns1 = lines_run(f1)
|
|
out2, lns2 = lines_run(f2)
|
|
dif = list(difflib.unified_diff(lns1, lns2))
|
|
return len(dif) == 0, dif
|
|
|
|
|
|
if __name__ == '__main__':
|
|
parser = argparse.ArgumentParser(description='Comparing the standard output of two threads')
|
|
parser.add_argument("-f1", nargs='+')
|
|
parser.add_argument("-f2", nargs='+')
|
|
argv = parser.parse_args(sys.argv[1:])
|
|
res, dif = stdout_cmp(argv.f1, argv.f2)
|
|
if not res:
|
|
print('\n'.join(dif))
|
|
exit(1)
|
|
exit(0)
|