View | Details | Raw Unified | Return to bug 390
Collapse All | Expand All

(-)a/wscript (-10 / +19 lines)
 Lines 878-896    Link Here 
878
                print "Cannot locate reference traces in " + refTestDirName
878
                print "Cannot locate reference traces in " + refTestDirName
879
                return 1
879
                return 1
880
880
881
            shutil.rmtree("traces");
881
            
882
            os.mkdir("traces")
882
            if refTestName is None:
883
                traceDirName = testName + ".ref"
884
            else:
885
                traceDirName = refTestName
886
            traceDirName = os.path.join ('traces', traceDirName)
887
888
            try:
889
                shutil.rmtree(traceDirName)
890
            except OSError:
891
                pass
892
            os.mkdir(traceDirName)
883
893
884
            #os.system("./waf --cwd regression/traces --run " +
894
            #os.system("./waf --cwd regression/traces --run " +
885
            #  testName + " > /dev/null 2>&1")
895
            #  testName + " > /dev/null 2>&1")
886
896
887
            if pyscript is None:
897
            if pyscript is None:
888
                Params.g_options.cwd_launch = "traces"
898
                Params.g_options.cwd_launch = traceDirName
889
                run_program(testName, command_template=get_command_template(*arguments))
899
                run_program(testName, command_template=get_command_template(*arguments))
890
            else:
900
            else:
891
                argv = [self.env['PYTHON'], os.path.join('..', '..', *os.path.split(pyscript))] + arguments
901
                argv = [self.env['PYTHON'], os.path.join('..', '..', '..', *os.path.split(pyscript))] + arguments
892
                before = os.getcwd()
902
                before = os.getcwd()
893
                os.chdir("traces")
903
                os.chdir(traceDirName)
894
                try:
904
                try:
895
                    _run_argv(argv)
905
                    _run_argv(argv)
896
                finally:
906
                finally:
 Lines 898-904    Link Here 
898
908
899
            if verbose:
909
            if verbose:
900
                #diffCmd = "diff traces " + refTestDirName + " | head"
910
                #diffCmd = "diff traces " + refTestDirName + " | head"
901
                diffCmd = subprocess.Popen([self.env['DIFF'], "traces", refTestDirName],
911
                diffCmd = subprocess.Popen([self.env['DIFF'], traceDirName, refTestDirName],
902
                                           stdout=subprocess.PIPE)
912
                                           stdout=subprocess.PIPE)
903
                headCmd = subprocess.Popen("head", stdin=diffCmd.stdout)
913
                headCmd = subprocess.Popen("head", stdin=diffCmd.stdout)
904
                rc2 = headCmd.wait()
914
                rc2 = headCmd.wait()
 Lines 906-912    Link Here 
906
                rc1 = diffCmd.wait()
916
                rc1 = diffCmd.wait()
907
                rc = rc1 or rc2
917
                rc = rc1 or rc2
908
            else:
918
            else:
909
                rc = subprocess.Popen([self.env['DIFF'], "traces", refTestDirName], stdout=dev_null()).wait()
919
                rc = subprocess.Popen([self.env['DIFF'], traceDirName, refTestDirName], stdout=dev_null()).wait()
910
            if rc:
920
            if rc:
911
                print "----------"
921
                print "----------"
912
                print "Traces differ in test: test-" + testName
922
                print "Traces differ in test: test-" + testName
 Lines 914-920    Link Here 
914
                print "Traces in directory: traces"
924
                print "Traces in directory: traces"
915
                print "Rerun regression test as: " + \
925
                print "Rerun regression test as: " + \
916
                    "\"./waf --regression --regression-tests=test-" + testName + "\""
926
                    "\"./waf --regression --regression-tests=test-" + testName + "\""
917
                print "Then do \"diff -u regression/" + refTestDirName + " regression/traces" \
927
                print "Then do \"diff -u regression/" + refTestDirName + " regression/" + traceDirName +\
918
                    "\" for details"
928
                    "\" for details"
919
                print "----------"
929
                print "----------"
920
            return rc
930
            return rc
 Lines 1013-1020    Link Here 
1013
        for file in files:
1023
        for file in files:
1014
            if file == '.' or file == '..':
1024
            if file == '.' or file == '..':
1015
                continue
1025
                continue
1016
            path = "traces" + os.sep + file
1026
            shutil.rmtree(os.path.join ("traces", file))
1017
            os.remove(path)
1018
    else:
1027
    else:
1019
        os.mkdir("traces")
1028
        os.mkdir("traces")
1020
    
1029
    

Return to bug 390