Title: [93161] trunk/Tools
Revision
93161
Author
[email protected]
Date
2011-08-16 14:55:42 -0700 (Tue, 16 Aug 2011)

Log Message

Summary view should not add multiple entries for the same test failure.
https://bugs.webkit.org/show_bug.cgi?id=66318

Reviewed by Adam Barth.

* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/summary.js: Added a simplistic updating button.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js: Added ways to check for
    equality of ui.notifications.FailingTest, and whether ui.notifications.TestFailures already contains a given failure analysis.
* BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js: Added tests.

Modified Paths

Diff

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/summary.js (93160 => 93161)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/summary.js	2011-08-16 21:39:32 UTC (rev 93160)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/summary.js	2011-08-16 21:55:42 UTC (rev 93161)
@@ -63,6 +63,12 @@
     g_updateTimerId = window.setInterval(update, config.kUpdateFrequency);
     document.body.insertBefore(g_actions, document.body.firstChild);
     document.body.insertBefore(g_info, document.body.firstChild);
+    var button = document.body.insertBefore(document.createElement("button"), document.body.firstChild);
+    button.addEventListener("click", function()
+    {
+        update();
+    }, false);
+    button.textContent = 'update';
     update();
 });
 

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js (93160 => 93161)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js	2011-08-16 21:39:32 UTC (rev 93160)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js	2011-08-16 21:55:42 UTC (rev 93161)
@@ -82,6 +82,10 @@
     {
         // FIXME: Show type of failure and where it's failing.
         this.textContent = failureAnalysis.testName;
+    },
+    equals: function(failureAnalysis)
+    {
+        return this.textContent == failureAnalysis.testName;
     }
 })
 
@@ -121,11 +125,18 @@
         this._causes = problem.appendChild(document.createElement('ul'));
         this._causes.className = 'causes';
     },
+    containsFailureAnalysis: function(failureAnalysis)
+    {
+        return Array.prototype.some.call(this._tests.children, function(child) {
+            return child.equals(failureAnalysis);
+        });
+    },
     addFailureAnalysis: function(failureAnalysis)
     {
-        // FIXME: Add in order.
-        // FIXME: Don't add more than once.
+        if (this.containsFailureAnalysis(failureAnalysis))
+            return;
         // FIXME: Retrieve date from failureAnalysis and set this._time.
+        // FIXME: Add in order by time.
         return this._tests.appendChild(new ui.notifications.FailingTest(failureAnalysis));
     },
     addCommitData: function(commitData)

Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js (93160 => 93161)


--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js	2011-08-16 21:39:32 UTC (rev 93160)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js	2011-08-16 21:55:42 UTC (rev 93161)
@@ -46,10 +46,12 @@
     ok(info.dismiss);
 });
 
-test('ui.notifications.FailingTest', 2, function() {
+test('ui.notifications.FailingTest', 4, function() {
     var failingTest = new ui.notifications.FailingTest({testName: 'test'});
     equal(failingTest.tagName, 'LI');
     equal(failingTest.innerHTML, 'test');
+    ok(failingTest.equals({testName: 'test'}));
+    ok(!failingTest.equals({testName: 'foo'}));
 });
 
 test('ui.notifications.SuspiciousCommit', 2, function() {
@@ -58,12 +60,16 @@
     equal(suspiciousCommit.innerHTML, '<div class="description"><a href="" author (reviewer)</div><ul class="actions"><li><button>Roll out</button></li></ul>');
 });
 
-test('ui.notifications.TestFailures', 4, function() {
+test('ui.notifications.TestFailures', 7, function() {
     var testFailures = new ui.notifications.TestFailures();
     equal(testFailures.tagName, 'LI');
     equal(testFailures.innerHTML, '<time>Just Now</time><div class="what"><div class="problem"><ul class="effects"></ul><ul class="causes"></ul></div></div>');
     testFailures.addFailureAnalysis({testName: 'test'});
     equal(testFailures.innerHTML, '<time>Just Now</time><div class="what"><div class="problem"><ul class="effects"><li>test</li></ul><ul class="causes"></ul></div></div>');
+    ok(testFailures.containsFailureAnalysis({testName: 'test'}));
+    ok(!testFailures.containsFailureAnalysis({testName: 'foo'}));
+    testFailures.addFailureAnalysis({testName: 'test'});
+    equal(testFailures.innerHTML, '<time>Just Now</time><div class="what"><div class="problem"><ul class="effects"><li>test</li></ul><ul class="causes"></ul></div></div>');
     testFailures.addCommitData({revision: 1, title: "title", author: "author", reviewer: "reviewer"});
     equal(testFailures.innerHTML, '<time>Just Now</time><div class="what"><div class="problem"><ul class="effects"><li>test</li></ul><ul class="causes"><li><div class="description"><a href="" author (reviewer)</div><ul class="actions"><li><button>Roll out</button></li></ul></li></ul></div></div>');
 });

Modified: trunk/Tools/ChangeLog (93160 => 93161)


--- trunk/Tools/ChangeLog	2011-08-16 21:39:32 UTC (rev 93160)
+++ trunk/Tools/ChangeLog	2011-08-16 21:55:42 UTC (rev 93161)
@@ -1,3 +1,15 @@
+2011-08-16  Dimitri Glazkov  <[email protected]>
+
+        Summary view should not add multiple entries for the same test failure.
+        https://bugs.webkit.org/show_bug.cgi?id=66318
+
+        Reviewed by Adam Barth.
+
+        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/summary.js: Added a simplistic updating button.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js: Added ways to check for
+            equality of ui.notifications.FailingTest, and whether ui.notifications.TestFailures already contains a given failure analysis.
+        * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js: Added tests.
+
 2011-08-16  Adam Roben  <[email protected]>
 
         Teach TestFailures that tests that have failed or passed many times in a row are not flaky
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to