Title: [88310] trunk/Tools
Revision
88310
Author
[email protected]
Date
2011-06-07 18:37:20 -0700 (Tue, 07 Jun 2011)

Log Message

2011-06-07  Ryosuke Niwa  <[email protected]>

        Reviewed by Tony Chang.

        new-run-webkit-tests: Bot master should print useful information on waterfall/console for nrwt
        https://bugs.webkit.org/show_bug.cgi?id=62178

        Added commandComplete and evaluateCommand for NewRunWebKitTests class
        to parse new-run-webkit-tests' results.

        * BuildSlaveSupport/build.webkit.org-config/master.cfg:

Modified Paths

Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg (88309 => 88310)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg	2011-06-08 01:37:03 UTC (rev 88309)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg	2011-06-08 01:37:20 UTC (rev 88310)
@@ -267,7 +267,48 @@
                "--test-results-server", "test-results.appspot.com",
                WithProperties("--%(configuration)s")]
 
+    def commandComplete(self, cmd):
+        shell.Test.commandComplete(self, cmd)
 
+        logText = cmd.logs['stdio'].getText()
+        incorrectLayoutLines = []
+        expressions = {
+            'failed': re.compile(r'Regressions: Unexpected.+:?\s*\((\d+)\)'),
+            'were flaky': re.compile(r'Unexpected flakiness.+:?\s*\((\d+)\)'),
+            'new passes': re.compile(r'Expected to .+, but passed:\s+\((\d+)\)'),
+        }
+        testFailures = {}
+
+        for line in logText.splitlines():
+            if line.find('Exiting early') >= 0:
+                incorrectLayoutLines.append(line)
+                continue
+            for name in expressions:
+                match = expressions[name].search(line)
+                if match:
+                    testFailures[name] = testFailures.get(name, 0) + int(match.group(1))
+
+                # FIXME: Parse file names and put them in results
+
+        for name in testFailures:
+            incorrectLayoutLines.append(str(testFailures[name]) + ' ' + name)
+
+        self.incorrectLayoutLines = incorrectLayoutLines
+
+    def evaluateCommand(self, cmd):
+        if cmd.rc != 0:
+            return FAILURE
+
+        result = SUCCESS
+        if self.incorrectLayoutLines:
+            for line in incorrectLayoutLines:
+                if result != FAILURE and (line.find('were flaky') >= 0 or line.find('passed unexpectedly') >= 0):
+                    result = WARNINGS
+                else:
+                    result = FAILURE
+
+        return result
+
 class RunPythonTests(shell.Test):
     name = "webkitpy-test"
     description = ["python-tests running"]

Modified: trunk/Tools/ChangeLog (88309 => 88310)


--- trunk/Tools/ChangeLog	2011-06-08 01:37:03 UTC (rev 88309)
+++ trunk/Tools/ChangeLog	2011-06-08 01:37:20 UTC (rev 88310)
@@ -1,3 +1,15 @@
+2011-06-07  Ryosuke Niwa  <[email protected]>
+
+        Reviewed by Tony Chang.
+
+        new-run-webkit-tests: Bot master should print useful information on waterfall/console for nrwt
+        https://bugs.webkit.org/show_bug.cgi?id=62178
+
+        Added commandComplete and evaluateCommand for NewRunWebKitTests class
+        to parse new-run-webkit-tests' results.
+
+        * BuildSlaveSupport/build.webkit.org-config/master.cfg:
+
 2011-06-07  Dirk Pranke  <[email protected]>
 
         Reviewed by Eric Seidel.
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to