[llvm] r330848 - Revert r330755 "[lit] Report line number for failed RUN command"
Reid Kleckner via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 25 10:30:00 PDT 2018
Author: rnk
Date: Wed Apr 25 10:30:00 2018
New Revision: 330848
URL: http://llvm.org/viewvc/llvm-project?rev=330848&view=rev
Log:
Revert r330755 "[lit] Report line number for failed RUN command"
It is causing many tests to fail on Windows buildbots:
http://lab.llvm.org:8011/builders/clang-x64-ninja-win7/builds/10211
Removed:
llvm/trunk/utils/lit/tests/Inputs/shtest-run-at-line/
llvm/trunk/utils/lit/tests/Inputs/shtest-shell/colon-error.txt
llvm/trunk/utils/lit/tests/shtest-run-at-line.py
Modified:
llvm/trunk/docs/CommandGuide/lit.rst
llvm/trunk/utils/lit/lit/TestRunner.py
llvm/trunk/utils/lit/tests/max-failures.py
llvm/trunk/utils/lit/tests/shtest-format.py
llvm/trunk/utils/lit/tests/shtest-output-printing.py
llvm/trunk/utils/lit/tests/shtest-shell.py
llvm/trunk/utils/lit/tests/unit/TestRunner.py
Modified: llvm/trunk/docs/CommandGuide/lit.rst
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/CommandGuide/lit.rst?rev=330848&r1=330847&r2=330848&view=diff
==============================================================================
--- llvm/trunk/docs/CommandGuide/lit.rst (original)
+++ llvm/trunk/docs/CommandGuide/lit.rst Wed Apr 25 10:30:00 2018
@@ -85,8 +85,6 @@ OUTPUT OPTIONS
Echo all commands to stdout, as they are being executed.
This can be valuable for debugging test failures, as the last echoed command
will be the one which has failed.
- To help you find the source RUN line, :program:`lit` inserts a no-op ``:``
- command with argument ``'RUN: at line N'`` before each command pipeline.
This option implies ``--verbose``.
.. option:: -a, --show-all
Modified: llvm/trunk/utils/lit/lit/TestRunner.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/lit/TestRunner.py?rev=330848&r1=330847&r2=330848&view=diff
==============================================================================
--- llvm/trunk/utils/lit/lit/TestRunner.py (original)
+++ llvm/trunk/utils/lit/lit/TestRunner.py Wed Apr 25 10:30:00 2018
@@ -789,13 +789,6 @@ def _executeShCmd(cmd, shenv, results, t
results.append(cmdResult)
return cmdResult.exitCode
- if cmd.commands[0].args[0] == ':':
- if len(cmd.commands) != 1:
- raise InternalShellError(cmd.commands[0], "Unsupported: ':' "
- "cannot be part of a pipeline")
- results.append(ShellCommandResult(cmd.commands[0], '', '', 0, False))
- return 0;
-
procs = []
default_stdin = subprocess.PIPE
stderrTempFiles = []
@@ -1325,8 +1318,7 @@ class IntegratedTestKeywordParser(object
def parseLine(self, line_number, line):
try:
self.parsed_lines += [(line_number, line)]
- self.value = self.parser(line_number, line, self.value,
- self.keyword)
+ self.value = self.parser(line_number, line, self.value)
except ValueError as e:
raise ValueError(str(e) + ("\nin %s directive on test line %d" %
(self.keyword, line_number)))
@@ -1335,12 +1327,12 @@ class IntegratedTestKeywordParser(object
return self.value
@staticmethod
- def _handleTag(line_number, line, output, keyword):
+ def _handleTag(line_number, line, output):
"""A helper for parsing TAG type keywords"""
return (not line.strip() or output)
@staticmethod
- def _handleCommand(line_number, line, output, keyword):
+ def _handleCommand(line_number, line, output):
"""A helper for parsing COMMAND type keywords"""
# Trim trailing whitespace.
line = line.rstrip()
@@ -1359,15 +1351,11 @@ class IntegratedTestKeywordParser(object
else:
if output is None:
output = []
- line = ": '{keyword} at line {line}'; {real_command}".format(
- keyword=keyword,
- line=line_number,
- real_command=line)
output.append(line)
return output
@staticmethod
- def _handleList(line_number, line, output, keyword):
+ def _handleList(line_number, line, output):
"""A parser for LIST type keywords"""
if output is None:
output = []
@@ -1375,7 +1363,7 @@ class IntegratedTestKeywordParser(object
return output
@staticmethod
- def _handleBooleanExpr(line_number, line, output, keyword):
+ def _handleBooleanExpr(line_number, line, output):
"""A parser for BOOLEAN_EXPR type keywords"""
if output is None:
output = []
@@ -1388,18 +1376,17 @@ class IntegratedTestKeywordParser(object
return output
@staticmethod
- def _handleRequiresAny(line_number, line, output, keyword):
+ def _handleRequiresAny(line_number, line, output):
"""A custom parser to transform REQUIRES-ANY: into REQUIRES:"""
# Extract the conditions specified in REQUIRES-ANY: as written.
conditions = []
- IntegratedTestKeywordParser._handleList(line_number, line, conditions,
- keyword)
+ IntegratedTestKeywordParser._handleList(line_number, line, conditions)
# Output a `REQUIRES: a || b || c` expression in its place.
expression = ' || '.join(conditions)
- IntegratedTestKeywordParser._handleBooleanExpr(line_number, expression,
- output, keyword)
+ IntegratedTestKeywordParser._handleBooleanExpr(line_number,
+ expression, output)
return output
def parseIntegratedTestScript(test, additional_parsers=[],
Removed: llvm/trunk/utils/lit/tests/Inputs/shtest-shell/colon-error.txt
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/Inputs/shtest-shell/colon-error.txt?rev=330847&view=auto
==============================================================================
--- llvm/trunk/utils/lit/tests/Inputs/shtest-shell/colon-error.txt (original)
+++ llvm/trunk/utils/lit/tests/Inputs/shtest-shell/colon-error.txt (removed)
@@ -1,3 +0,0 @@
-# Check error on an unsupported ":". (cannot be part of a pipeline)
-#
-# RUN: : | echo "hello"
Modified: llvm/trunk/utils/lit/tests/max-failures.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/max-failures.py?rev=330848&r1=330847&r2=330848&view=diff
==============================================================================
--- llvm/trunk/utils/lit/tests/max-failures.py (original)
+++ llvm/trunk/utils/lit/tests/max-failures.py Wed Apr 25 10:30:00 2018
@@ -8,7 +8,7 @@
#
# END.
-# CHECK: Failing Tests (27)
+# CHECK: Failing Tests (26)
# CHECK: Failing Tests (1)
# CHECK: Failing Tests (2)
# CHECK: error: Setting --max-failures to 0 does not have any effect.
Modified: llvm/trunk/utils/lit/tests/shtest-format.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/shtest-format.py?rev=330848&r1=330847&r2=330848&view=diff
==============================================================================
--- llvm/trunk/utils/lit/tests/shtest-format.py (original)
+++ llvm/trunk/utils/lit/tests/shtest-format.py Wed Apr 25 10:30:00 2018
@@ -39,7 +39,6 @@
#
# CHECK: Command Output (stdout):
# CHECK-NEXT: --
-# CHECK-NEXT: $ ":" "RUN: at line 1"
# CHECK-NEXT: $ "printf"
# CHECK-NEXT: # command output:
# CHECK-NEXT: line 1: failed test output on stdout
Modified: llvm/trunk/utils/lit/tests/shtest-output-printing.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/shtest-output-printing.py?rev=330848&r1=330847&r2=330848&view=diff
==============================================================================
--- llvm/trunk/utils/lit/tests/shtest-output-printing.py (original)
+++ llvm/trunk/utils/lit/tests/shtest-output-printing.py Wed Apr 25 10:30:00 2018
@@ -16,15 +16,12 @@
#
# CHECK: Command Output
# CHECK-NEXT: --
-# CHECK-NEXT: $ ":" "RUN: at line 1"
# CHECK-NEXT: $ "true"
-# CHECK-NEXT: $ ":" "RUN: at line 2"
# CHECK-NEXT: $ "echo" "hi"
# CHECK-NEXT: # command output:
# CHECK-NEXT: hi
#
-# CHECK: $ ":" "RUN: at line 3"
-# CHECK-NEXT: $ "wc" "missing-file"
+# CHECK: $ "wc" "missing-file"
# CHECK-NEXT: # redirected output from '{{.*(/|\\\\)}}basic.txt.tmp.out':
# CHECK-NEXT: missing-file{{.*}} No such file or directory
# CHECK: note: command had no output on stdout or stderr
Removed: llvm/trunk/utils/lit/tests/shtest-run-at-line.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/shtest-run-at-line.py?rev=330847&view=auto
==============================================================================
--- llvm/trunk/utils/lit/tests/shtest-run-at-line.py (original)
+++ llvm/trunk/utils/lit/tests/shtest-run-at-line.py (removed)
@@ -1,74 +0,0 @@
-# Check that -vv makes the line number of the failing RUN command clear.
-# (-v is actually sufficient in the case of the internal shell.)
-#
-# RUN: not %{lit} -j 1 -vv %{inputs}/shtest-run-at-line > %t.out
-# RUN: FileCheck --input-file %t.out %s
-#
-# END.
-
-
-# CHECK: Testing: 4 tests
-
-
-# In the case of the external shell, we check for only RUN lines in stderr in
-# case some shell implementations format "set -x" output differently.
-
-# CHECK-LABEL: FAIL: shtest-run-at-line :: external-shell/basic.txt
-
-# CHECK: Script:
-# CHECK: : 'RUN: at line 1'; true
-# CHECK-NEXT: : 'RUN: at line 2'; false
-# CHECK-NEXT: : 'RUN: at line 3'; true
-
-# CHECK: Command Output (stderr)
-# CHECK: RUN: at line 1
-# CHECK: RUN: at line 2
-# CHECK-NOT: RUN
-
-# CHECK-LABEL: FAIL: shtest-run-at-line :: external-shell/line-continuation.txt
-
-# CHECK: Script:
-# CHECK: : 'RUN: at line 1'; : first line continued to second line
-# CHECK-NEXT: : 'RUN: at line 3'; echo 'foo bar' | FileCheck
-# CHECK-NEXT: : 'RUN: at line 5'; echo 'foo baz' | FileCheck
-# CHECK-NEXT: : 'RUN: at line 8'; echo 'foo bar' | FileCheck
-
-# CHECK: Command Output (stderr)
-# CHECK: RUN: at line 1
-# CHECK: RUN: at line 3
-# CHECK: RUN: at line 5
-# CHECK-NOT: RUN
-
-
-# CHECK-LABEL: FAIL: shtest-run-at-line :: internal-shell/basic.txt
-
-# CHECK: Script:
-# CHECK: : 'RUN: at line 1'; true
-# CHECK-NEXT: : 'RUN: at line 2'; false
-# CHECK-NEXT: : 'RUN: at line 3'; true
-
-# CHECK: Command Output (stdout)
-# CHECK: $ ":" "RUN: at line 1"
-# CHECK-NEXT: $ "true"
-# CHECK-NEXT: $ ":" "RUN: at line 2"
-# CHECK-NEXT: $ "false"
-# CHECK-NOT: RUN
-
-# CHECK-LABEL: FAIL: shtest-run-at-line :: internal-shell/line-continuation.txt
-
-# CHECK: Script:
-# CHECK: : 'RUN: at line 1'; : first line continued to second line
-# CHECK-NEXT: : 'RUN: at line 3'; echo 'foo bar' | FileCheck
-# CHECK-NEXT: : 'RUN: at line 5'; echo 'foo baz' | FileCheck
-# CHECK-NEXT: : 'RUN: at line 8'; echo 'foo bar' | FileCheck
-
-# CHECK: Command Output (stdout)
-# CHECK: $ ":" "RUN: at line 1"
-# CHECK-NEXT: $ ":" "first" "line" "continued" "to" "second" "line"
-# CHECK-NEXT: $ ":" "RUN: at line 3"
-# CHECK-NEXT: $ "echo" "foo bar"
-# CHECK-NEXT: $ "FileCheck" "{{.*}}"
-# CHECK-NEXT: $ ":" "RUN: at line 5"
-# CHECK-NEXT: $ "echo" "foo baz"
-# CHECK-NEXT: $ "FileCheck" "{{.*}}"
-# CHECK-NOT: RUN
Modified: llvm/trunk/utils/lit/tests/shtest-shell.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/shtest-shell.py?rev=330848&r1=330847&r2=330848&view=diff
==============================================================================
--- llvm/trunk/utils/lit/tests/shtest-shell.py (original)
+++ llvm/trunk/utils/lit/tests/shtest-shell.py Wed Apr 25 10:30:00 2018
@@ -26,14 +26,6 @@
# CHECK: error: command failed with exit status: 1
# CHECK: ***
-# CHECK: FAIL: shtest-shell :: colon-error.txt
-# CHECK: *** TEST 'shtest-shell :: colon-error.txt' FAILED ***
-# CHECK: $ ":"
-# CHECK: # command stderr:
-# CHECK: Unsupported: ':' cannot be part of a pipeline
-# CHECK: error: command failed with exit status: 127
-# CHECK: ***
-
# CHECK: FAIL: shtest-shell :: diff-error-0.txt
# CHECK: *** TEST 'shtest-shell :: diff-error-0.txt' FAILED ***
# CHECK: $ "diff" "diff-error-0.txt" "diff-error-0.txt"
@@ -161,7 +153,7 @@
#
# CHECK: FAIL: shtest-shell :: error-1.txt
# CHECK: *** TEST 'shtest-shell :: error-1.txt' FAILED ***
-# CHECK: shell parser error on: ': \'RUN: at line 3\'; echo "missing quote'
+# CHECK: shell parser error on: 'echo "missing quote'
# CHECK: ***
# CHECK: FAIL: shtest-shell :: error-2.txt
@@ -227,4 +219,4 @@
# CHECK: PASS: shtest-shell :: sequencing-0.txt
# CHECK: XFAIL: shtest-shell :: sequencing-1.txt
# CHECK: PASS: shtest-shell :: valid-shell.txt
-# CHECK: Failing Tests (27)
+# CHECK: Failing Tests (26)
Modified: llvm/trunk/utils/lit/tests/unit/TestRunner.py
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/utils/lit/tests/unit/TestRunner.py?rev=330848&r1=330847&r2=330848&view=diff
==============================================================================
--- llvm/trunk/utils/lit/tests/unit/TestRunner.py (original)
+++ llvm/trunk/utils/lit/tests/unit/TestRunner.py Wed Apr 25 10:30:00 2018
@@ -47,7 +47,7 @@ class TestIntegratedTestKeywordParser(un
@staticmethod
def make_parsers():
- def custom_parse(line_number, line, output, keyword):
+ def custom_parse(line_number, line, output):
if output is None:
output = []
output += [part for part in line.split(' ') if part.strip()]
@@ -99,8 +99,8 @@ class TestIntegratedTestKeywordParser(un
cmd_parser = self.get_parser(parsers, 'MY_RUN:')
value = cmd_parser.getValue()
self.assertEqual(len(value), 2) # there are only two run lines
- self.assertEqual(value[0].strip(), ": 'MY_RUN: at line 4'; baz")
- self.assertEqual(value[1].strip(), ": 'MY_RUN: at line 7'; foo bar")
+ self.assertEqual(value[0].strip(), 'baz')
+ self.assertEqual(value[1].strip(), 'foo bar')
def test_custom(self):
parsers = self.make_parsers()
More information about the llvm-commits
mailing list