| Index: Tools/TestResultServer/static-dashboards/flakiness_dashboard_unittests.js
|
| diff --git a/Tools/TestResultServer/static-dashboards/flakiness_dashboard_unittests.js b/Tools/TestResultServer/static-dashboards/flakiness_dashboard_unittests.js
|
| index e3277c9a1fa395cbd23cb1f937f913c792546dd6..bbf59f394a62191f8647393399d428f7b2e5133c 100644
|
| --- a/Tools/TestResultServer/static-dashboards/flakiness_dashboard_unittests.js
|
| +++ b/Tools/TestResultServer/static-dashboards/flakiness_dashboard_unittests.js
|
| @@ -155,8 +155,9 @@ test('htmlForIndividualTestOnAllBuildersWithResultsLinks', 1, function() {
|
| '<td class=options-container>' +
|
| '<div><a href="http://crbug.com/1234">crbug.com/1234</a></div>' +
|
| '<div><a href="http://webkit.org/5678">webkit.org/5678</a></div>' +
|
| - '<td class=options-container><td><td title="TEXT. Click for more info." class="results TEXT" onclick=\'showPopupForBuild(event, "WebKit Linux",0,"dummytest.html")\'> ' +
|
| - '<td title="NO DATA. Click for more info." class="results NODATA" onclick=\'showPopupForBuild(event, "WebKit Linux",1,"dummytest.html")\'> ' +
|
| + '<td class=options-container><td>' +
|
| + '<td title="TEXT. Click for more info." class="results TEXT" onclick=\'showPopupForBuild(event, "WebKit Linux",0,"dummytest.html")\'> </td>' +
|
| + '<td title="NO DATA. Click for more info." class="results NODATA" onclick=\'showPopupForBuild(event, "WebKit Linux",1,"dummytest.html")\'>?</td>' +
|
| '</tbody>' +
|
| '</table>' +
|
| '<div>The following builders either don\'t run this test (e.g. it\'s skipped) or all recorded runs passed:</div>' +
|
| @@ -225,7 +226,8 @@ test('htmlForSingleTestRow', 1, function() {
|
| var builder = 'dummyBuilder';
|
| var test = createResultsObjectForTest('foo/exists.html', builder);
|
| historyInstance.dashboardSpecificState.showNonFlaky = true;
|
| - g_resultsByBuilder[builder] = {buildNumbers: [2, 1], blinkRevision: [1234, 1233], failure_map: FAILURE_MAP};
|
| + var blinkRevisions = [1234, 1233];
|
| + g_resultsByBuilder[builder] = {buildNumbers: [2, 1], blinkRevision: blinkRevisions, failure_map: FAILURE_MAP};
|
| test.rawResults = [[1, 'F'], [2, 'I']];
|
| test.rawTimes = [[1, 0], [2, 5]];
|
| var expected = '<tr>' +
|
| @@ -233,9 +235,10 @@ test('htmlForSingleTestRow', 1, function() {
|
| '<td class=options-container><a href="https://code.google.com/p/chromium/issues/entry?template=Layout%20Test%20Failure&summary=Layout%20Test%20foo%2Fexists.html%20is%20failing&comment=The%20following%20layout%20test%20is%20failing%20on%20%5Binsert%20platform%5D%0A%0Afoo%2Fexists.html%0A%0AProbable%20cause%3A%0A%0A%5Binsert%20probable%20cause%5D">File new bug</a>' +
|
| '<td class=options-container>' +
|
| '<td>' +
|
| - '<td title="TEXT. Click for more info." class="results TEXT" onclick=\'showPopupForBuild(event, "dummyBuilder",0,"foo/exists.html")\'> ' +
|
| - '<td title="IMAGE. Click for more info." class="results IMAGE" onclick=\'showPopupForBuild(event, "dummyBuilder",1,"foo/exists.html")\'>5';
|
| - equal(htmlForSingleTestRow(test), expected);
|
| + '<td title="TEXT. Click for more info." class="results TEXT" onclick=\'showPopupForBuild(event, "dummyBuilder",0,"foo/exists.html")\'> </td>' +
|
| + '<td title="IMAGE. Click for more info." class="results IMAGE" onclick=\'showPopupForBuild(event, "dummyBuilder",1,"foo/exists.html")\'>5</td>';
|
| +
|
| + equal(htmlForSingleTestRow(test, false, blinkRevisions), expected);
|
| });
|
|
|
| test('lookupVirtualTestSuite', 2, function() {
|
| @@ -400,3 +403,92 @@ test('shouldShowTest', 9, function() {
|
| historyInstance.crossDashboardState.testType = 'not layout tests';
|
| equal(shouldShowTest(test), true, 'show all non layout tests');
|
| });
|
| +
|
| +test('blinkBuildRevisions', 1, function() {
|
| + resetGlobals();
|
| + builders.loadBuildersList('@ToT Blink', 'layout-tests');
|
| + var test = 'dummytest.html';
|
| +
|
| + var builderName1 = 'WebKit Linux 1';
|
| + // Note: r1235 results were generated twice by two separate builds.
|
| + g_resultsByBuilder[builderName1] = {buildNumbers: [2, 1, 3, 4], blinkRevision: [1235, 1235, 1234, 1232], failure_map: FAILURE_MAP};
|
| +
|
| + var builderName2 = 'WebKit Linux 2';
|
| + g_resultsByBuilder[builderName2] = {buildNumbers: [4, 5], blinkRevision: [1236, 1234], failure_map: FAILURE_MAP};
|
| +
|
| + var resultsObject1 = createResultsObjectForTest(test, builderName1);
|
| + var resultsObject2 = createResultsObjectForTest(test, builderName2);
|
| +
|
| + var result = blinkBuildRevisions([resultsObject1, resultsObject2]).join(',');
|
| + var expected = [1236, 1235, 1235, 1234, 1232].join(',');
|
| + equal(result, expected, 'buildBlinkRevisions result should be the unique blink builds, sorted in descending order');
|
| +});
|
| +
|
| +
|
| +test('htmlForTestsWithMultipleRunsAtTheSameRevision', 1, function() {
|
| + resetGlobals();
|
| + builders.loadBuildersList('@ToT Blink', 'layout-tests');
|
| + var test = 'dummytest.html';
|
| +
|
| + var builderName1 = 'WebKit Linux (dbg)';
|
| + // Note: r1235 results were generated thrice by three separate builds.
|
| + g_resultsByBuilder[builderName1] = {buildNumbers: [4, 3, 2, 1, 0], blinkRevision: [1235, 1235, 1235, 1234, 1233], failure_map: FAILURE_MAP};
|
| +
|
| + var builderName2 = 'WebKit Win (dbg)';
|
| + g_resultsByBuilder[builderName2] = {buildNumbers: [6, 5], blinkRevision: [1236, 1234], failure_map: FAILURE_MAP};
|
| +
|
| + var resultsObject1 = createResultsObjectForTest(test, builderName1);
|
| + resultsObject1.rawResults = [[0, 'F'], [1, 'I'], [2, 'I'], [3, 'P'], [4, 'F']];
|
| + resultsObject1.rawTimes = [[0, 0], [1, 0], [2, 0], [3, 0], [4, 0]];
|
| + resultsObject1.bugs = ["crbug.com/1234", "crbug.com/5678", "crbug.com/9101112"];
|
| +
|
| + var resultsObject2 = createResultsObjectForTest(test, builderName2);
|
| + resultsObject2.rawResults = [[4, 'F'], [5, 'I']];
|
| + resultsObject2.rawTimes = [[4, 0], [5, 5]];
|
| + resultsObject2.bugs = ["crbug.com/one", "crbug.com/two"];
|
| +
|
| + g_testToResultsMap[test] = [resultsObject1, resultsObject2];
|
| + equal(htmlForIndividualTestOnAllBuildersWithResultsLinks(test),
|
| + '<table class=test-table><thead><tr>' +
|
| + '<th sortValue=test><div class=table-header-content><span></span><span class=header-text>test</span></div></th>' +
|
| + '<th sortValue=bugs><div class=table-header-content><span></span><span class=header-text>bugs</span></div></th>' +
|
| + '<th sortValue=expectations><div class=table-header-content><span></span><span class=header-text>expectations</span></div></th>' +
|
| + '<th sortValue=slowest><div class=table-header-content><span></span><span class=header-text>slowest run</span></div></th>' +
|
| + '<th sortValue=flakiness colspan=10000><div class=table-header-content><span></span><span class=header-text>flakiness (numbers are runtimes in seconds)</span></div></th>' +
|
| + '</tr></thead>' +
|
| + '<tbody><tr>' +
|
| + '<td class="test-link builder-name">WebKit Linux (dbg)' +
|
| + '<td class=options-container>' +
|
| + '<div><a href="http://crbug.com/1234">crbug.com/1234</a></div>' +
|
| + '<div><a href="http://crbug.com/5678">crbug.com/5678</a></div>' +
|
| + '<div><a href="http://crbug.com/9101112">crbug.com/9101112</a></div>' +
|
| + '<td class=options-container><td>' +
|
| + '<td title="Unknown result. Did not run tests." onclick=\'showPopupForInterpolatedResult(event, 1236)\' class="results interpolatedResults NODATA" >?</td>' +
|
| + '<td title="TEXT. Click for more info." class="results TEXT" onclick=\'showPopupForBuild(event, "WebKit Linux (dbg)",0,"dummytest.html")\'> </td>' +
|
| + '<td title="IMAGE. Click for more info." class="results IMAGE" onclick=\'showPopupForBuild(event, "WebKit Linux (dbg)",1,"dummytest.html")\'> </td>' +
|
| + '<td title="IMAGE. Click for more info." class="results IMAGE" onclick=\'showPopupForBuild(event, "WebKit Linux (dbg)",2,"dummytest.html")\'> </td>' +
|
| + '<td title="PASS. Click for more info." class="results PASS" onclick=\'showPopupForBuild(event, "WebKit Linux (dbg)",3,"dummytest.html")\'> </td>' +
|
| + '<td title="PASS. Click for more info." class="results PASS" onclick=\'showPopupForBuild(event, "WebKit Linux (dbg)",4,"dummytest.html")\'> </td>' +
|
| + '<tr><td class="test-link builder-name">WebKit Win (dbg)' +
|
| + '<td class=options-container>' +
|
| + '<div><a href="http://crbug.com/one">crbug.com/one</a></div>' +
|
| + '<div><a href="http://crbug.com/two">crbug.com/two</a></div>' +
|
| + '<td class=options-container><td>' +
|
| + '<td title="TEXT. Click for more info." class="results TEXT" onclick=\'showPopupForBuild(event, "WebKit Win (dbg)",0,"dummytest.html")\'> </td>' +
|
| + '<td title="Unknown result. Did not run tests." onclick=\'showPopupForInterpolatedResult(event, 1235)\' class="results interpolatedResults TEXT" >?</td>' +
|
| + '<td title="Unknown result. Did not run tests." onclick=\'showPopupForInterpolatedResult(event, 1235)\' class="results interpolatedResults TEXT" >?</td>' +
|
| + '<td title="Unknown result. Did not run tests." onclick=\'showPopupForInterpolatedResult(event, 1235)\' class="results interpolatedResults TEXT" >?</td>' +
|
| + '<td title="TEXT. Click for more info." class="results TEXT" onclick=\'showPopupForBuild(event, "WebKit Win (dbg)",1,"dummytest.html")\'> </td>' +
|
| + '<td title="Unknown result. Did not run tests." onclick=\'showPopupForInterpolatedResult(event, 1233)\' class="results interpolatedResults NODATA" >?</td>' +
|
| + '</tbody>' +
|
| + '</table>' +
|
| + '<div>The following builders either don\'t run this test (e.g. it\'s skipped) or all recorded runs passed:</div>' +
|
| + '<div class=skipped-builder-list>' +
|
| + '<div class=skipped-builder>WebKit Linux</div><div class=skipped-builder>WebKit Mac10.7</div><div class=skipped-builder>WebKit Win</div>' +
|
| + '</div>' +
|
| + '<div class=expectations test=dummytest.html>' +
|
| + '<div><span class=link onclick="g_history.setQueryParameter(\'showExpectations\', true)">Show results</span> | ' +
|
| + '<span class=link onclick="g_history.setQueryParameter(\'showLargeExpectations\', true)">Show large thumbnails</span> | ' +
|
| + '<b>Only shows actual results/diffs from the most recent *failure* on each bot.</b></div>' +
|
| + '</div>');
|
| +});
|
|
|