Title: [92875] trunk/Tools
- Revision
- 92875
- Author
- [email protected]
- Date
- 2011-08-11 13:59:51 -0700 (Thu, 11 Aug 2011)
Log Message
garden-o-matic should be able to determine when tests unexpectedly pass
https://bugs.webkit.org/show_bug.cgi?id=66092
Reviewed by Dimitri Glazkov.
This patch just contains the library methods for extracting this
information. I'll add some UI in a subsequent patch.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results.js:
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results_unittests.js:
Modified Paths
Diff
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results.js (92874 => 92875)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results.js 2011-08-11 20:43:18 UTC (rev 92874)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results.js 2011-08-11 20:59:51 UTC (rev 92875)
@@ -222,6 +222,15 @@
return anyIsFailure(results.unexpectedResults(resultNode));
}
+function isUnexpectedSuccesses(resultNode)
+{
+ if (!resultNode)
+ return false;
+ if (anyIsFailure(resultNode.actual.split(' ')))
+ return false;
+ return anyIsSuccess(results.unexpectedResults(resultNode));
+}
+
function isResultNode(node)
{
return !!node.actual;
@@ -232,20 +241,35 @@
return base.filterTree(resultsTree.tests, isResultNode, isUnexpectedFailure);
};
-results.unexpectedFailuresByTest = function(resultsByBuilder)
+results.unexpectedSuccesses = function(resultsTree)
{
- var unexpectedFailures = {};
+ return base.filterTree(resultsTree.tests, isResultNode, isUnexpectedSuccesses);
+};
+function resultsByTest(resultsByBuilder, filter)
+{
+ var resultsByTest = {};
+
$.each(resultsByBuilder, function(builderName, resultsTree) {
- $.each(results.unexpectedFailures(resultsTree), function(testName, resultNode) {
- unexpectedFailures[testName] = unexpectedFailures[testName] || {};
- unexpectedFailures[testName][builderName] = resultNode;
+ $.each(filter(resultsTree), function(testName, resultNode) {
+ resultsByTest[testName] = resultsByTest[testName] || {};
+ resultsByTest[testName][builderName] = resultNode;
});
});
- return unexpectedFailures;
+ return resultsByTest;
+}
+
+results.unexpectedFailuresByTest = function(resultsByBuilder)
+{
+ return resultsByTest(resultsByBuilder, results.unexpectedFailures);
};
+results.unexpectedSuccessesByTest = function(resultsByBuilder)
+{
+ return resultsByTest(resultsByBuilder, results.unexpectedSuccesses);
+};
+
results.collectUnexpectedResults = function(dictionaryOfResultNodes)
{
var collectedResults = [];
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results_unittests.js (92874 => 92875)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results_unittests.js 2011-08-11 20:43:18 UTC (rev 92874)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results_unittests.js 2011-08-11 20:59:51 UTC (rev 92875)
@@ -37,6 +37,10 @@
"flaky-scrollbar.html": {
"expected": "PASS",
"actual": "PASS TEXT"
+ },
+ "unexpected-pass.html": {
+ "expected": "FAIL",
+ "actual": "PASS"
}
},
"userscripts": {
@@ -88,6 +92,20 @@
});
});
+test("unexpectedSuccessesByTest", 1, function() {
+ var unexpectedFailuresByTest = results.unexpectedSuccessesByTest({
+ "Mock Builder": kExampleResultsJSON
+ });
+ deepEqual(unexpectedFailuresByTest, {
+ "scrollbars/unexpected-pass.html": {
+ "Mock Builder": {
+ "expected": "FAIL",
+ "actual": "PASS"
+ }
+ }
+ });
+});
+
test("resultKind", 12, function() {
equals(results.resultKind("http://example.com/foo-actual.txt"), "actual");
equals(results.resultKind("http://example.com/foo-expected.txt"), "expected");
Modified: trunk/Tools/ChangeLog (92874 => 92875)
--- trunk/Tools/ChangeLog 2011-08-11 20:43:18 UTC (rev 92874)
+++ trunk/Tools/ChangeLog 2011-08-11 20:59:51 UTC (rev 92875)
@@ -1,3 +1,16 @@
+2011-08-11 Adam Barth <[email protected]>
+
+ garden-o-matic should be able to determine when tests unexpectedly pass
+ https://bugs.webkit.org/show_bug.cgi?id=66092
+
+ Reviewed by Dimitri Glazkov.
+
+ This patch just contains the library methods for extracting this
+ information. I'll add some UI in a subsequent patch.
+
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results.js:
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/results_unittests.js:
+
2011-08-11 Dimitri Glazkov <[email protected]>
New expectation entries should be placed next to existing ones.
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes