Commit 0d30851a authored by ojan@chromium.org's avatar ojan@chromium.org

Cleanup some garden-o-matic cruft and dead code.

The biggest change is removing RelativeTime. We were creating these,
but not doing anything with them. These were also the only
things that ever called setIndex on Notification, so we can remove
index/setIndex from Notification.

The rest of the patch is just removing dead code.

NOTRY=true

Review URL: https://codereview.chromium.org/336033002

git-svn-id: svn://svn.chromium.org/blink/trunk@176156 bbb929c8-8fbe-4397-9dbb-9b2b20218538
parent b1e79166
......@@ -261,55 +261,6 @@ base.extends = function(base, prototype)
return extended;
}
function createRelativeTimeDescriptor(divisorInMilliseconds, unit)
{
return function(delta) {
var deltaInUnits = delta / divisorInMilliseconds;
return (deltaInUnits).toFixed(0) + ' ' + unit + (deltaInUnits >= 1.5 ? 's' : '') + ' ago';
}
}
var kMinuteInMilliseconds = 60 * 1000;
var kRelativeTimeSlots = [
{
maxMilliseconds: kMinuteInMilliseconds,
describe: function(delta) { return 'Just now'; }
},
{
maxMilliseconds: 60 * kMinuteInMilliseconds,
describe: createRelativeTimeDescriptor(kMinuteInMilliseconds, 'minute')
},
{
maxMilliseconds: 24 * 60 * kMinuteInMilliseconds,
describe: createRelativeTimeDescriptor(60 * kMinuteInMilliseconds, 'hour')
},
{
maxMilliseconds: Number.MAX_VALUE,
describe: createRelativeTimeDescriptor(24 * 60 * kMinuteInMilliseconds, 'day')
}
];
/*
Represent time as descriptive text, relative to now and gradually decreasing in precision:
delta < 1 minutes => Just Now
delta < 60 minutes => X minute[s] ago
delta < 24 hours => X hour[s] ago
delta < inf => X day[s] ago
*/
base.relativizeTime = function(time)
{
var result;
var delta = new Date().getTime() - time;
kRelativeTimeSlots.some(function(slot) {
if (delta >= slot.maxMilliseconds)
return false;
result = slot.describe(delta);
return true;
});
return result;
}
base.getURLParameter = function(name)
{
var match = RegExp(name + '=' + '(.+?)(&|$)').exec(location.search);
......
......@@ -314,37 +314,6 @@ test("extends", 14, function() {
document.body.removeChild(document.body.lastChild);
});
test("relativizeTime", 14, function() {
var time = new Date();
equals(base.relativizeTime(time), "Just now");
time.setMinutes(time.getMinutes() - 1);
equals(base.relativizeTime(time), "1 minute ago");
time.setMinutes(time.getMinutes() - 1);
equals(base.relativizeTime(time), "2 minutes ago");
time.setMinutes(time.getMinutes() - 1);
equals(base.relativizeTime(time), "3 minutes ago");
time.setMinutes(time.getMinutes() - 56);
equals(base.relativizeTime(time), "59 minutes ago");
time.setMinutes(time.getMinutes() - 1);
equals(base.relativizeTime(time), "1 hour ago");
time.setMinutes(time.getMinutes() - 29);
equals(base.relativizeTime(time), "1 hour ago");
time.setMinutes(time.getMinutes() - 2);
equals(base.relativizeTime(time), "2 hours ago");
time.setMinutes(time.getMinutes() - 29);
equals(base.relativizeTime(time), "2 hours ago");
time.setHours(time.getHours() - 1);
equals(base.relativizeTime(time), "3 hours ago");
time.setHours(time.getHours() - 20);
equals(base.relativizeTime(time), "23 hours ago");
time.setHours(time.getHours() - 1);
equals(base.relativizeTime(time), "1 day ago");
time.setDate(time.getDate() - 1);
equals(base.relativizeTime(time), "2 days ago");
time.setDate(time.getDate() - 998);
equals(base.relativizeTime(time), "1000 days ago");
});
test("getURLParameter", 1, function() {
ok(!base.getURLParameter('non-existant'));
});
......
......@@ -28,14 +28,11 @@ var config = config || {};
(function() {
config = {
kBuildNumberLimit: 20,
kRelativeTimeUpdateFrequency: 1000 * 60,
kTreeStatusUpdateFrequency: 1000 * 30,
kUpdateFrequency: 10 * 60 * 1000,
kBlinkSvnURL: 'svn://svn.chromium.org/blink/trunk',
kBlinkRevisionURL: 'http://src.chromium.org/viewvc/blink',
kSvnLogURL: 'http://build.chromium.org/cgi-bin/svn-log',
kRietveldURL: 'https://codereview.chromium.org',
buildConsoleURL: 'http://build.chromium.org/p/chromium.webkit',
......
......@@ -312,19 +312,6 @@ controllers.UnexpectedFailures = base.extends(FailureStreamController, {
}
});
controllers.Failures = base.extends(FailureStreamController, {
_resultsFilter: results.expectedFailuresByTest,
_keyFor: function(failureAnalysis)
{
return base.dirName(failureAnalysis.testName);
},
_createFailureView: function(failureAnalysis)
{
return new ui.notifications.FailingTests();
},
});
controllers.FailingBuilders = base.extends(Object, {
init: function(view, message)
{
......
......@@ -90,7 +90,7 @@ test("controllers.FailingBuilders", 3, function() {
equal(view.outerHTML, '<div>' +
'<li style="opacity: 0;">' +
'<div class="how"><time class="relative"></time></div>' +
'<div class="how"></div>' +
'<div class="what">' +
'<div class="problem">dummy message:' +
'<ul class="effects">' +
......
......@@ -68,10 +68,6 @@ function update()
if (g_revisionHint)
g_revisionHint.dismiss();
var gtestIframe = document.querySelector('#chromium-gtests iframe');
if (gtestIframe)
gtestIframe.src = gtestIframe.src;
// FIXME: This should be a button with a progress element.
var numberOfTestsAnalyzed = 0;
var updating = new ui.notifications.Info('Loading commit data ...');
......@@ -98,7 +94,7 @@ function update()
Object.keys(config.builders).forEach(function(builderName) {
if (!model.state.resultsByBuilder[builderName])
g_info.add(new ui.notifications.Info('Could not find test results for ' + builderName + ' in the last ' + config.kBuildNumberLimit + ' runs.'));
g_info.add(new ui.notifications.Info('Could not find test results for ' + builderName + '.'));
});
updating.dismiss();
......
......@@ -211,33 +211,6 @@ ui.onebar = base.extends('div', {
}
});
// FIXME: Loading a module shouldn't set off a timer. The controller should kick this off.
setInterval(function() {
Array.prototype.forEach.call(document.querySelectorAll("time.relative"), function(time) {
time.update && time.update();
});
}, config.kRelativeTimeUpdateFrequency);
ui.RelativeTime = base.extends('time', {
init: function()
{
this.className = 'relative';
},
date: function()
{
return this._date;
},
update: function()
{
this.textContent = this._date ? base.relativizeTime(this._date) : '';
},
setDate: function(date)
{
this._date = date;
this.update();
}
});
ui.TreeStatus = base.extends('div', {
addStatus: function(name)
{
......
......@@ -37,14 +37,7 @@ ui.notifications.Stream = base.extends('ol', {
},
add: function(notification)
{
var insertBefore = null;
Array.prototype.some.call(this.children, function(existingNotification) {
if (existingNotification.index() < notification.index()) {
insertBefore = existingNotification;
return true;
}
});
this.insertBefore(notification, insertBefore);
this.appendChild(notification);
return notification;
}
});
......@@ -59,14 +52,6 @@ ui.notifications.Notification = base.extends('li', {
this._index = 0;
$(this).hide().fadeIn('fast');
},
index: function()
{
return this._index;
},
setIndex: function(index)
{
this._index = index;
},
dismiss: function()
{
// FIXME: These fade in/out effects are lame.
......@@ -136,7 +121,7 @@ ui.notifications.SuspiciousCommit = base.extends(Cause, {
var span = this._details.appendChild(document.createElement('span'));
span.className = part;
if (linkFunction) {
var parts = $.isArray(content) ? content : [content];
parts.forEach(function(item, index) {
......@@ -155,7 +140,6 @@ ui.notifications.SuspiciousCommit = base.extends(Cause, {
ui.notifications.Failure = base.extends(ui.notifications.Notification, {
init: function()
{
this._time = this._how.appendChild(new ui.RelativeTime());
this._problem = this._what.appendChild(document.createElement('div'));
this._problem.className = 'problem';
this._effects = this._problem.appendChild(document.createElement('ul'));
......@@ -163,10 +147,6 @@ ui.notifications.Failure = base.extends(ui.notifications.Notification, {
this._causes = this._what.appendChild(document.createElement('ul'));
this._causes.className = 'causes';
},
date: function()
{
return this._time.date;
}
});
ui.notifications.FailingTests = base.extends(ui.notifications.Failure, {
......@@ -246,11 +226,6 @@ ui.notifications.FailingTestsSummary = base.extends(ui.notifications.FailingTest
{
if (this._commitDataPinned)
return null;
var commitDataDate = new Date(commitData.time);
if (this._time.date > commitDataDate); {
this.setIndex(commitDataDate.getTime());
this._time.setDate(commitDataDate);
}
return this._causes.appendChild(new ui.notifications.SuspiciousCommit(commitData));
}
});
......
......@@ -27,46 +27,28 @@
module('ui.notifications');
test('Notification', 5, function() {
test('Notification', 3, function() {
var notification = new ui.notifications.Notification();
equal(notification.tagName, 'LI');
equal(notification.innerHTML, '<div class="how"></div><div class="what"></div>');
equal(notification.index(), 0);
notification.setIndex(1);
equal(notification.index(), 1);
// FIXME: Really need to figure out how to mock/test animated removal.
ok(notification.dismiss);
});
test('Stream', 11, function() {
test('Stream', 7, function() {
var stream = new ui.notifications.Stream();
equal(stream.tagName, 'OL');
equal(stream.className, 'notifications');
equal(stream.childElementCount, 0);
var notification;
notification = new ui.notifications.Info('-o-matic');
notification.setIndex(2);
var notification = new ui.notifications.Info('garden-o-matic is ');
stream.add(notification);
equal(stream.childElementCount, 1);
equal(stream.textContent, '-o-matic');
notification = new ui.notifications.Info('garden');
notification.setIndex(3);
stream.add(notification);
equal(stream.childElementCount, 2);
equal(stream.textContent, 'garden-o-matic');
notification = new ui.notifications.Info(' is ');
notification.setIndex(1);
stream.add(notification);
equal(stream.childElementCount, 3);
equal(stream.textContent, 'garden-o-matic is ');
notification = new ui.notifications.Info('awesome!');
stream.add(notification);
equal(stream.childElementCount, 4);
equal(stream.childElementCount, 2);
equal(stream.textContent, 'garden-o-matic is awesome!');
});
......@@ -101,7 +83,6 @@ test('FailingTestsSummary', 12, function() {
equal(testFailures.tagName, 'LI');
equal(testFailures.innerHTML,
'<div class="how">' +
'<time class="relative"></time>' +
'<table class="failures">' +
'<thead><tr><td>type</td><td>release</td><td>debug</td></tr></thead>' +
'<tbody><tr class="BUILDING" style="display: none;"><td><span>BUILDING</span></td><td></td><td></td></tr></tbody>' +
......@@ -118,10 +99,8 @@ test('FailingTestsSummary', 12, function() {
'<ul class="causes"></ul>' +
'</div>');
testFailures.addFailureAnalysis({testName: 'test', resultNodesByBuilder: {}});
equal(testFailures.index(), 0);
equal(testFailures.innerHTML,
'<div class="how">' +
'<time class="relative"></time>' +
'<table class="failures">' +
'<thead><tr><td>type</td><td>release</td><td>debug</td></tr></thead>' +
'<tbody><tr class="BUILDING" style="display: none;"><td><span>BUILDING</span></td><td></td><td></td></tr></tbody>' +
......@@ -144,7 +123,6 @@ test('FailingTestsSummary', 12, function() {
testFailures.addFailureAnalysis({testName: 'test'});
equal(testFailures.innerHTML,
'<div class="how">' +
'<time class="relative"></time>' +
'<table class="failures">' +
'<thead><tr><td>type</td><td>release</td><td>debug</td></tr></thead>' +
'<tbody><tr class="BUILDING" style="display: none;"><td><span>BUILDING</span></td><td></td><td></td></tr></tbody>' +
......@@ -166,10 +144,8 @@ test('FailingTestsSummary', 12, function() {
var time = new Date();
time.setMinutes(time.getMinutes() - 10);
testFailures.addCommitData({revision: 1, time: time, title: "title", author: "author", reviewer: "reviewer"});
equal(testFailures.index(), time.getTime());
equal(testFailures.innerHTML,
'<div class="how">' +
'<time class="relative">10 minutes ago</time>' +
'<table class="failures">' +
'<thead><tr><td>type</td><td>release</td><td>debug</td></tr></thead>' +
'<tbody><tr class="BUILDING" style="display: none;"><td><span>BUILDING</span></td><td></td><td></td></tr></tbody>' +
......@@ -202,7 +178,6 @@ test('FailingTestsSummary', 12, function() {
testFailures.addFailureAnalysis({testName: 'foo', resultNodesByBuilder: {'WebKit Linux (dbg)': { actual: 'TEXT'}}});
equal(testFailures.innerHTML,
'<div class="how">' +
'<time class="relative">10 minutes ago</time>' +
'<table class="failures">' +
'<thead><tr><td>type</td><td>release</td><td>debug</td></tr></thead>' +
'<tbody>' +
......@@ -243,7 +218,6 @@ test('FailingTestsSummary', 12, function() {
testFailures.updateBuilderResults({'WebKit Mac10.6': { actual: 'BUILDING'}});
equal(testFailures.innerHTML,
'<div class="how">' +
'<time class="relative">10 minutes ago</time>' +
'<table class="failures">' +
'<thead><tr><td>type</td><td>release</td><td>debug</td></tr></thead>' +
'<tbody>' +
......@@ -295,7 +269,6 @@ test('FailingTestsSummary (grouping)', 1, function() {
testFailures.addFailureAnalysis({testName: 'path/another/test.html', resultNodesByBuilder: {}});
equal(testFailures.innerHTML,
'<div class="how">' +
'<time class="relative"></time>' +
'<table class="failures">' +
'<thead><tr><td>type</td><td>release</td><td>debug</td></tr></thead>' +
'<tbody><tr class="BUILDING" style="display: none;"><td><span>BUILDING</span></td><td></td><td></td></tr></tbody>' +
......@@ -321,7 +294,6 @@ test('BuildersFailing', 1, function() {
builderFailing.setFailingBuilders({'WebKit Linux': ['compile'], 'WebKit Win7': ['webkit_tests', 'update']});
equal(builderFailing.innerHTML,
'<div class="how">' +
'<time class="relative"></time>' +
'</div>' +
'<div class="what">' +
'<div class="problem">Disasterifying:' +
......
......@@ -127,24 +127,6 @@ test("results.ResultsGrid (empty)", 1, function() {
equal(grid.innerHTML, 'No results to display.');
});
test("time", 6, function() {
var time = new ui.RelativeTime();
equal(time.tagName, 'TIME');
equal(time.className, 'relative');
deepEqual(Object.getOwnPropertyNames(time.__proto__).sort(), [
'date',
'init',
'setDate',
'update',
]);
equal(time.outerHTML, '<time class="relative"></time>');
var tenMinutesAgo = new Date();
tenMinutesAgo.setMinutes(tenMinutesAgo.getMinutes() - 10);
time.setDate(tenMinutesAgo);
equal(time.outerHTML, '<time class="relative">10 minutes ago</time>');
equal(time.date().getTime(), tenMinutesAgo.getTime());
});
test("StatusArea", 3, function() {
var statusArea = new ui.StatusArea();
var id = statusArea.newId();
......
......@@ -53,12 +53,6 @@ ol.notifications div.how {
width: 350px;
}
ol.notifications time {
display: block;
color: #888;
padding: 0 0 20px 0;
}
ol.notifications div.what {
display: -webkit-box;
-webkit-box-orient: vertical;
......
......@@ -57,21 +57,6 @@
background: url(../images/partytime.gif) center center no-repeat;
}
#chromium-gtests iframe {
border: 0;
height: 20px;
}
#chromium-gtests {
position: absolute;
top: 10px;
right: 5px;
}
#gtest-label {
vertical-align: top;
}
#link-handling {
position: absolute;
top: 10px;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment