tests/run-tests.py
changeset 21 aa0870d093b8
parent 0 bbeef801409c
child 530 6ee7add34f8b
equal deleted inserted replaced
20:9983f240ac63 21:aa0870d093b8
   275             failed.append(line[len(FAILED_PREFIX):])
   275             failed.append(line[len(FAILED_PREFIX):])
   276 
   276 
   277     return missing, failed
   277     return missing, failed
   278 
   278 
   279 def showdiff(expected, output, ref, err):
   279 def showdiff(expected, output, ref, err):
   280     for line in difflib.unified_diff(expected, output, ref, err):
   280     try:
   281         sys.stdout.write(line)
   281         for line in difflib.unified_diff(expected, output, ref, err):
       
   282             sys.stdout.write(line)
       
   283     except IOError, ex:
       
   284         print >>sys.stderr, 'BORKEN PIPE', ex.errno
       
   285         pass
   282 
   286 
   283 def findprogram(program):
   287 def findprogram(program):
   284     """Search PATH for a executable program"""
   288     """Search PATH for a executable program"""
   285     for p in os.environ.get('PATH', os.defpath).split(os.pathsep):
   289     for p in os.environ.get('PATH', os.defpath).split(os.pathsep):
   286         name = os.path.join(p, program)
   290         name = os.path.join(p, program)
   763     elif ret:
   767     elif ret:
   764         mark = '!'
   768         mark = '!'
   765         fail("returned error code %d" % ret)
   769         fail("returned error code %d" % ret)
   766 
   770 
   767     if not options.verbose:
   771     if not options.verbose:
   768         sys.stdout.write(mark)
   772         try:
   769         sys.stdout.flush()
   773             sys.stdout.write(mark)
       
   774             sys.stdout.flush()
       
   775         except IOError, ex:
       
   776             print >>sys.stderr, 'BORKEN PIPE', ex.errno
       
   777             pass
   770 
   778 
   771     killdaemons()
   779     killdaemons()
   772 
   780 
   773     os.chdir(TESTDIR)
   781     os.chdir(TESTDIR)
   774     if not options.keep_tmpdir:
   782     if not options.keep_tmpdir: