Diff
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js (95065 => 95066)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js 2011-09-14 01:19:04 UTC (rev 95065)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js 2011-09-14 01:20:29 UTC (rev 95066)
@@ -104,7 +104,7 @@
});
};
-checkout.rebaseline = function(failureInfoList, callback)
+checkout.rebaseline = function(failureInfoList, callback, progressCallback)
{
callIfCheckoutAvailable(function() {
base.callInSequence(function(failureInfo, callback) {
@@ -112,6 +112,8 @@
'builder': failureInfo.builderName,
'test': failureInfo.testName,
}), function() {
+ if (progressCallback)
+ progressCallback(failureInfo);
callback();
});
}, failureInfoList, function() {
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js (95065 => 95066)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js 2011-09-14 01:19:04 UTC (rev 95065)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js 2011-09-14 01:20:29 UTC (rev 95066)
@@ -27,6 +27,23 @@
(function(){
+// FIXME: Where should this function go?
+function rebaselineWithStatusUpdates(failureInfoList)
+{
+ var statusView = new ui.MessageBox(
+ 'Rebaseline status',
+ 'Performing rebaseline...');
+
+ checkout.rebaseline(failureInfoList, function() {
+ statusView.addMessage('Rebaseline done! Please land with "webkit-patch land-cowboy".');
+
+ statusView.addActionList(new ui.actions.List([new ui.actions.Close()]));
+ $(statusView).bind('close', statusView.close.bind(statusView));
+ }, function(failureInfo) {
+ statusView.addMessage(failureInfo.testName + ' on ' + ui.displayNameForBuilder(failureInfo.builderName));
+ });
+}
+
controllers.ResultsDetails = base.extends(Object, {
init: function(view, resultsByTest)
{
@@ -55,10 +72,7 @@
'builderName': builderName
}
});
- checkout.rebaseline(failureInfoList, function() {
- // FIXME: We should have a better dialog than this!
- alert('Rebaseline done! Please land with "webkit-patch land-cowboy".');
- });
+ rebaselineWithStatusUpdates(failureInfoList);
}
});
@@ -119,10 +133,7 @@
onRebaseline: function(failures)
{
var failureInfoList = base.flattenArray(failures.testNameList().map(model.unexpectedFailureInfoForTestName));
- checkout.rebaseline(failureInfoList, function() {
- // FIXME: We should have a better dialog than this!
- alert('Rebaseline done! Please land with "webkit-patch land-cowboy".');
- });
+ rebaselineWithStatusUpdates(failureInfoList);
}
});
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/actions.js (95065 => 95066)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/actions.js 2011-09-14 01:19:04 UTC (rev 95065)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/actions.js 2011-09-14 01:20:29 UTC (rev 95066)
@@ -53,6 +53,13 @@
}
});
+ui.actions.Close = base.extends(Action, {
+ init: function() {
+ this.textContent = 'Close';
+ this._eventName = 'close';
+ }
+});
+
ui.actions.Rollout = base.extends(Action, {
init: function() {
this.textContent = 'Roll out';
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js (95065 => 95066)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js 2011-09-14 01:19:04 UTC (rev 95065)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js 2011-09-14 01:20:29 UTC (rev 95066)
@@ -132,4 +132,36 @@
}
});
+ui.MessageBox = base.extends('div', {
+ init: function(title, message)
+ {
+ this._content = document.createElement('div');
+ this.appendChild(this._content);
+ this.addMessage(message);
+ document.body.appendChild(this);
+ $(this).dialog({
+ resizable: false,
+ title: title,
+ width: $(window).width() * 0.80, // FIXME: We should have CSS do this work for us.
+ });
+ $(this).bind('dialogclose', function() {
+ $(this).detach();
+ }.bind(this));
+ },
+ close: function()
+ {
+ $(this).dialog('close');
+ },
+ addMessage: function(message)
+ {
+ var element = document.createElement('div');
+ $(element).addClass('message').text(message);
+ this._content.appendChild(element);
+ },
+ addActionList: function(actionList)
+ {
+ this.appendChild(actionList);
+ }
+});
+
})();
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js (95065 => 95066)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js 2011-09-14 01:19:04 UTC (rev 95065)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js 2011-09-14 01:20:29 UTC (rev 95066)
@@ -114,4 +114,17 @@
equal(time.date().getTime(), tenMinutesAgo.getTime());
});
+test("MessageBox", 1, function() {
+ var messageBox = new ui.MessageBox('The Title', 'First message');
+ messageBox.addMessage('Second Message');
+ equal(messageBox.outerHTML,
+ '<div class="ui-dialog-content ui-widget-content" style="width: auto; min-height: 132px; height: auto; " scrolltop="0" scrollleft="0">' +
+ '<div>' +
+ '<div class="message">First message</div>' +
+ '<div class="message">Second Message</div>' +
+ '</div>' +
+ '</div>');
+ messageBox.close();
+});
+
})();
Modified: trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css (95065 => 95066)
--- trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css 2011-09-14 01:19:04 UTC (rev 95065)
+++ trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css 2011-09-14 01:20:29 UTC (rev 95066)
@@ -23,7 +23,7 @@
* THE POSSIBILITY OF SUCH DAMAGE.
*/
-.results-view ul.actions {
+.results-view ul.actions, .ui-dialog ul.actions {
float: right;
margin: 0;
padding: 5px 0px;
@@ -31,7 +31,7 @@
display: inline-block;
}
-.results-view ul.actions li {
+.results-view ul.actions li, .ui-dialog ul.actions li {
display: inline-block;
}
Modified: trunk/Tools/ChangeLog (95065 => 95066)
--- trunk/Tools/ChangeLog 2011-09-14 01:19:04 UTC (rev 95065)
+++ trunk/Tools/ChangeLog 2011-09-14 01:20:29 UTC (rev 95066)
@@ -1,3 +1,22 @@
+2011-09-13 Adam Barth <aba...@webkit.org>
+
+ garden-o-matic should tell you about the progress of your rebaseline
+ https://bugs.webkit.org/show_bug.cgi?id=67967
+
+ Reviewed by Dimitri Glazkov.
+
+ This patch adds ui.MessageBox, which is a light wrapper around jQuery
+ UI's dialog widget. We then use ui.MessageBox to show status messages
+ about in-progress rebaselines. As each baseline is downloaded, the
+ MessageBox updates. This UI replaces our temporary "alert"-based UI.
+
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/checkout.js:
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js:
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui.js:
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/actions.js:
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui_unittests.js:
+ * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/results.css:
+
2011-09-13 Leandro Pereira <lean...@profusion.mobi>
GTK DumpRenderTree uses inefficient idioms to iterate over G[S]Lists