[PATCH] D24111: [lit] Fail testing if a googletest executable crashes during test discovery
Greg Parker via llvm-commits
llvm-commits at lists.llvm.org
Wed Aug 31 16:58:48 PDT 2016
gparker42 created this revision.
gparker42 added a reviewer: ddunbar.
gparker42 added a subscriber: llvm-commits.
googletest formatted tests are discovered by running the test executable. Previously testing would silently succeed if the test executable crashed during the discovery process. Now testing fails with "error: unable to discover google-tests ..." if the test executable exits with a non-zero status.
https://reviews.llvm.org/D24111
Files:
utils/lit/lit/formats/googletest.py
utils/lit/lit/util.py
Index: utils/lit/lit/util.py
===================================================================
--- utils/lit/lit/util.py
+++ utils/lit/lit/util.py
@@ -65,10 +65,13 @@
def capture(args, env=None):
"""capture(command) - Run the given command (or argv list) in a shell and
- return the standard output."""
+ return the standard output. Raises a CalledProcessError if the command
+ exits with a non-zero status."""
p = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE,
env=env)
out,_ = p.communicate()
+ if p.returncode != 0:
+ raise subprocess.CalledProcessError(cmd=args, returncode=p.returncode)
return convert_string(out)
def which(command, paths = None):
Index: utils/lit/lit/formats/googletest.py
===================================================================
--- utils/lit/lit/formats/googletest.py
+++ utils/lit/lit/formats/googletest.py
@@ -35,7 +35,8 @@
lines = lines.replace('\r', '')
lines = lines.split('\n')
except:
- litConfig.error("unable to discover google-tests in %r" % path)
+ litConfig.error("unable to discover google-tests in %r: %s"
+ % (path, sys.exc_info()[1]))
raise StopIteration
nested_tests = []
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D24111.69929.patch
Type: text/x-patch
Size: 1332 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160831/51f550d2/attachment.bin>
More information about the llvm-commits
mailing list