diff --git a/scripts/parse_commands.py b/scripts/parse_commands.py index b86751fb6cf52fbb3e265ab45f98f45301e07cac..c3f8d43f596a9edc9f2d0b6c2d0fdefebd71c871 100644 --- a/scripts/parse_commands.py +++ b/scripts/parse_commands.py @@ -86,7 +86,7 @@ if __name__ == '__main__': # Relies on the list being sorted i = 0 while i + 1 < len(cmds_enc): - if " ".join(cmds_enc[i].split()[:-1]) == " ".join(cmds_enc[i+1].split()[:-1]): + if cmds_enc[i].split()[:-1] == cmds_enc[i+1].split()[:-1]: del cmds_enc[i+1] else: i = i + 1 @@ -185,6 +185,8 @@ if __name__ == '__main__': with open('scripts/rend_header.txt','r') as header: outfile.write(header.read()) for cmd in cmds_rend: + absolute_out = re.search(r"-o ([^>]+\.wav)", cmd) + args = [] for arg in cmd.split(): # Adjust file arguments, pass other arguments as they are @@ -200,8 +202,14 @@ if __name__ == '__main__': if "ref" in cmd: outfile.write(cmd+'\n') out = re.search(r"-o\s(([\S]+)(.wav|.raw|.pcm))", cmd) + if out and "ref" in out.group(1): - outfile.write('$DIFF_BIN '+out.group(1).replace(CUT_PATH + r'/renderer_short/ref',REF_PATH + r'/renderer_short/ref')+' '+out.group(1)+' >> $LOG_FILE 2>&1\n') + diff_cmds=[] + for output in glob.glob(absolute_out.group(1) + '*'): + output = path.relpath(output).replace('\\','/') + output = re.sub('tests', CUT_PATH, output) + diff_cmds.append('$DIFF_BIN '+output.replace(CUT_PATH + r'/renderer_short/ref',REF_PATH + r'/renderer_short/ref')+' '+ output +' >> $LOG_FILE 2>&1') + outfile.write(('; ').join(diff_cmds)) outfile.write('\n') with open('scripts/script_footer.txt','r') as footer: outfile.write(footer.read())