diff options
| author | Comment <tim@gray.(none)> | 2013-05-20 22:42:45 +0100 |
|---|---|---|
| committer | Comment <tim@gray.(none)> | 2013-05-20 22:42:45 +0100 |
| commit | 1099cec06b35a5b401a30fed9a13a5b448834b7e (patch) | |
| tree | dd0a904d7a4114069d289056b5d71283f15ea2cc /ffmpeg-fas/test/run_test.py | |
| parent | 7a3d7d2779a99fda5362ca341c965ddff826b2b7 (diff) | |
ffmpeg-fas
Diffstat (limited to 'ffmpeg-fas/test/run_test.py')
| -rwxr-xr-x | ffmpeg-fas/test/run_test.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/ffmpeg-fas/test/run_test.py b/ffmpeg-fas/test/run_test.py new file mode 100755 index 0000000..38dbb21 --- /dev/null +++ b/ffmpeg-fas/test/run_test.py @@ -0,0 +1,56 @@ +#!/usr/bin/python + +import sys +import os + +def readFilelist(filename): + try: + f = open(filename, 'r') + except: + return [] + return [ele[:-1] for ele in f.readlines()] + +def create_filter_func(cmd, log_file): + if log_file == "": + return lambda filename : 0 == os.system(cmd + " " + filename) + else: + return lambda filename : 0 == os.system(cmd + " " + filename + " 2>> " + log_file) + +def write_filelist(files, filename): + f = open(filename, 'w') + for arg in files: + f.write(arg + '\n') + f.close() + +if __name__ == "__main__": + if len(sys.argv) < 3 or len(sys.argv) > 4: + print "Usage: " + sys.argv[0] + " <test_executable> <file_list>" + raise SystemExit + + + if not os.path.isfile(sys.argv[1]): + print sys.argv[1] + " not found" + raise SystemExit + + cmd = sys.argv[1] + base_name = cmd.split('/')[-1] + + success_file = base_name + ".pass" + fail_file = base_name + ".fail" + + if len(sys.argv) == 4: + log_file = sys.argv[3] + if os.path.isfile(log_file): + os.system("rm " + log_file) + else: + log_file = "" + + files = readFilelist(sys.argv[2]) + + filterfunc = create_filter_func(cmd, log_file) + successful = filter(filterfunc, files) + failed = list(set(files) - set(successful)) + + write_filelist(failed, fail_file) + write_filelist(successful, success_file) + |
