Changeset 106739 in webkit
- Timestamp:
- Feb 4, 2012 2:22:12 AM (12 years ago)
- Location:
- trunk/Tools
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/base.js
r99325 r106739 172 172 }; 173 173 174 base.forEachDirectory = function(pathList, callback) 175 { 176 var pathsByDirectory = {}; 177 pathList.forEach(function(path) { 178 var directory = base.dirName(path); 179 pathsByDirectory[directory] = pathsByDirectory[directory] || []; 180 pathsByDirectory[directory].push(path); 181 }); 182 Object.keys(pathsByDirectory).sort().forEach(function(directory) { 183 var paths = pathsByDirectory[directory]; 184 callback(directory + ' (' + paths.length + ' tests)', paths); 185 }); 186 }; 187 174 188 base.parseJSONP = function(jsonp) 175 189 { … … 177 191 var endIndex = jsonp.lastIndexOf(')'); 178 192 return JSON.parse(jsonp.substr(startIndex, endIndex - startIndex)); 179 } 193 }; 180 194 181 195 base.RequestTracker = function(requestsInFlight, callback, args) -
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js
r106727 r106739 105 105 { 106 106 var expectedOrUnexpectedFailures = results.expectedOrUnexpectedFailuresByTest(this._model.resultsByBuilder); 107 this._view.setFailingTests(Object.keys(expectedOrUnexpectedFailures)); 107 var failingTestsList = Object.keys(expectedOrUnexpectedFailures); 108 109 $(this._view).empty(); 110 base.forEachDirectory(failingTestsList, function(label, testsFailingInDirectory) { 111 var listItem = new ui.failures.ListItem(label, testsFailingInDirectory); 112 this._view.appendChild(listItem); 113 $(listItem).bind('examine', function() { 114 this.onExamine(testsFailingInDirectory); 115 }.bind(this)); 116 }.bind(this)); 117 }, 118 onExamine: function(failingTestsList) 119 { 120 var resultsView = new ui.results.View({ 121 fetchResultsURLs: results.fetchResultsURLs 122 }); 123 var failuresByTest = base.filterDictionary( 124 results.expectedOrUnexpectedFailuresByTest(this._model.resultsByBuilder), 125 function(key) { 126 return failingTestsList.indexOf(key) != -1; 127 }); 128 var controller = new controllers.ResultsDetails(resultsView, failuresByTest); 129 this._delegate.showResults(resultsView); 108 130 } 109 131 }); -
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures.js
r106727 r106739 128 128 }); 129 129 130 ui.failures.List = base.extends('div', { 130 ui.failures.ListItem = base.extends('li', { 131 init: function(groupName, failingTestsList) 132 { 133 this._failingTestsList = failingTestsList; 134 this.appendChild(new ui.actions.List([ 135 new ui.actions.Examine().makeDefault(), 136 ])); 137 var label = this.appendChild(document.createElement('label')) 138 label.textContent = failingTestsList.length == 1 ? failingTestsList[0] : groupName; 139 }, 140 }); 141 142 ui.failures.List = base.extends('ul', { 131 143 init: function() 132 144 { 145 this.className = 'failures'; 133 146 this.textContent = 'Loading...'; 134 },135 setFailingTests: function(failingTestsList)136 {137 $(this).empty();138 var list = this.appendChild(document.createElement('ul'));139 failingTestsList.sort().forEach(function(failingTest) {140 list.appendChild(document.createElement('li')).textContent = failingTest;141 });142 147 } 143 148 }); -
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js
r101072 r106739 183 183 _forEachTestGroup: function(callback) 184 184 { 185 var testsByDirectory = {};186 this._testNameList.forEach(function(testName) {187 var directory = base.dirName(testName);188 testsByDirectory[directory] = testsByDirectory[directory] || [];189 testsByDirectory[directory].push(testName);190 });191 185 var individualTests = []; 192 Object.keys(testsByDirectory).forEach(function(directory) { 193 var testsInDirectory = testsByDirectory[directory]; 194 var count = testsInDirectory.length; 195 if (count <= kMaxTestsPerGroup) { 186 base.forEachDirectory(this._testNameList, function(groupLabel, testsInDirectory) { 187 if (testsInDirectory.length <= kMaxTestsPerGroup) { 196 188 individualTests = individualTests.concat(testsInDirectory); 197 189 return; 198 190 } 199 callback( directory + ' (' + count + ' tests)', testsInDirectory);191 callback(groupLabel, testsInDirectory); 200 192 }); 201 193 individualTests.forEach(function(testName) { -
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js
r104423 r106739 219 219 '<div class="problem">' + 220 220 '<ul class="effects">' + 221 '<li><a target="_blank" href="http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=test">test</a></li>' +222 221 '<li><a target="_blank" href="http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=foo">foo</a></li>' + 222 '<li><a target="_blank" href="http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=test">test</a></li>' + 223 223 '</ul>' + 224 224 '<ul class="actions">' + … … 264 264 '<div class="problem">' + 265 265 '<ul class="effects">' + 266 '<li><a target="_blank" href="http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=test">test</a></li>' +267 266 '<li><a target="_blank" href="http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=foo">foo</a></li>' + 267 '<li><a target="_blank" href="http://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=test">test</a></li>' + 268 268 '</ul>' + 269 269 '<ul class="actions">' + -
trunk/Tools/BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/failures.css
r97190 r106739 52 52 padding: 0 2px; 53 53 } 54 55 56 ul.failures { 57 padding: 0px; 58 } 59 60 ul.failures>li { 61 display: -webkit-box; 62 } 63 64 ul.failures>li label { 65 margin-left: 10px; 66 } 67 68 ul.failures>li ul.actions { 69 padding: 0px; 70 visibility: hidden; 71 } 72 73 ul.failures>li:hover ul.actions { 74 visibility: visible; 75 } -
trunk/Tools/ChangeLog
r106735 r106739 1 2012-02-04 Adam Barth <abarth@webkit.org> 2 3 garden-o-matic's All Failure tab should let you examine and rebaseline expected failures 4 https://bugs.webkit.org/show_bug.cgi?id=77802 5 6 Reviewed by Eric Seidel. 7 8 This patch refactors our directory grouping code into base.js where it 9 can be shared between failures.js and notifications.js. It then adds 10 an Examine action to each group of failures that triggers the "results" 11 view. 12 13 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/base.js: 14 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/controllers.js: 15 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/failures.js: 16 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications.js: 17 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/ui/notifications_unittests.js: 18 * BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/failures.css: 19 1 20 2012-02-04 Ojan Vafai <ojan@chromium.org> 2 21
Note: See TracChangeset
for help on using the changeset viewer.