| Index: Tools/GardeningServer/model/test/ct-failures-tests.html
|
| diff --git a/Tools/GardeningServer/model/test/ct-failures-tests.html b/Tools/GardeningServer/model/test/ct-failures-tests.html
|
| index 8dd2339906acafbdce4dc94ca8c5debdc646d849..8c9e11931b35dcc917ca1353cd63d17ead98750c 100644
|
| --- a/Tools/GardeningServer/model/test/ct-failures-tests.html
|
| +++ b/Tools/GardeningServer/model/test/ct-failures-tests.html
|
| @@ -14,6 +14,7 @@ found in the LICENSE file.
|
|
|
| <script>
|
| (function () {
|
| +'use strict';
|
|
|
| var assert = chai.assert;
|
|
|
| @@ -67,6 +68,133 @@ describe('ct-failures', function() {
|
| });
|
| });
|
|
|
| + describe('._mungeAlerts', function() {
|
| + it('puts alerts into a standard format', function() {
|
| + var analyzer = new CTFailures(new CTCommitList(undefined, []));
|
| + var alerts = [
|
| + {
|
| + reason: 'reason',
|
| + master_url: 'https://build.chromium.org/p/chromium.webkit',
|
| + },
|
| + {
|
| + reason: 'reason:type',
|
| + master_url: 'https://build.chromium.org/p/chromium.chrome',
|
| + },
|
| + {
|
| + master_url: 'https://build.chromium.org/p/chromium.gpu',
|
| + },
|
| + {
|
| + reason: 'reason:type',
|
| + failureType: 'actual_type',
|
| + },
|
| + ];
|
| + analyzer._mungeAlerts(alerts);
|
| + assert.lengthOf(alerts, 4);
|
| + assert.deepEqual(alerts[0], {
|
| + reason: 'reason',
|
| + failureType: 'FAIL',
|
| + master_url: 'https://build.chromium.org/p/chromium.webkit',
|
| + tree: 'blink',
|
| + });
|
| + assert.deepEqual(alerts[1], {
|
| + reason: 'reason',
|
| + failureType: 'type',
|
| + master_url: 'https://build.chromium.org/p/chromium.chrome',
|
| + tree: 'chromium',
|
| + });
|
| + assert.deepEqual(alerts[2], {
|
| + failureType: 'UNKNOWN',
|
| + master_url: 'https://build.chromium.org/p/chromium.gpu',
|
| + tree: 'chromium',
|
| + });
|
| + assert.deepEqual(alerts[3], {
|
| + reason: 'reason:type',
|
| + failureType: 'actual_type',
|
| + tree: undefined,
|
| + });
|
| + });
|
| + });
|
| +
|
| + describe('.groupFailuresByTreeAndReason', function() {
|
| + it('groups failures', function() {
|
| + var analyzer = new CTFailures(new CTCommitList(undefined, []));
|
| + var linuxAnnotation = [1];
|
| + var winAnnotation = [2];
|
| + var blinkAnnotation = [3];
|
| + var annotations = {
|
| + 'https_//build.chromium.org/p/chromium::Linux::1::unit_tests::MyTest': linuxAnnotation,
|
| + 'https_//build.chromium.org/p/chromium::Win::3::unit_tests::MyTest': winAnnotation,
|
| + 'https_//build.chromium.org/p/chromium.webkit::Linux::1::LayoutTests::MyTest': blinkAnnotation,
|
| + };
|
| + var failuresByTree = analyzer._groupFailuresByTreeAndReason([{
|
| + tree: 'chromium',
|
| + step_name: 'unit_tests',
|
| + reason: 'MyTest',
|
| + builder_name: 'Linux',
|
| + failureType: 'a_type',
|
| + failing_build: 1,
|
| + last_failing_build: 2,
|
| + failing_build_count: 2,
|
| + master_url: 'https://build.chromium.org/p/chromium',
|
| + }, {
|
| + tree: 'chromium',
|
| + step_name: 'unit_tests',
|
| + reason: 'MyTest',
|
| + builder_name: 'Win',
|
| + failureType: 'another_type',
|
| + failing_build: 3,
|
| + last_failing_build: 5,
|
| + failing_build_count: 42,
|
| + master_url: 'https://build.chromium.org/p/chromium',
|
| + }, {
|
| + tree: 'blink',
|
| + step_name: 'LayoutTests',
|
| + reason: 'MyTest',
|
| + builder_name: 'Linux',
|
| + failureType: 'a_type',
|
| + failing_build: 1,
|
| + last_failing_build: 2,
|
| + failing_build_count: 2,
|
| + master_url: 'https://build.chromium.org/p/chromium.webkit',
|
| + }], annotations);
|
| + assert.equal(Object.size(failuresByTree), 2);
|
| + assert.equal(Object.size(failuresByTree.chromium), 1);
|
| + assert.property(failuresByTree.chromium, '{"step":"unit_tests","reason":"MyTest"}');
|
| + var chromiumBuilders = failuresByTree.chromium['{"step":"unit_tests","reason":"MyTest"}'];
|
| + assert.equal(Object.size(chromiumBuilders), 2);
|
| + assert.equal(Object.size(chromiumBuilders.Linux), 7);
|
| + assert.propertyVal(chromiumBuilders.Linux, 'key', 'https_//build.chromium.org/p/chromium::Linux::1::unit_tests::MyTest');
|
| + assert.propertyVal(chromiumBuilders.Linux, 'actual', 'a_type');
|
| + assert.propertyVal(chromiumBuilders.Linux, 'lastFailingBuild', 2);
|
| + assert.propertyVal(chromiumBuilders.Linux, 'earliestFailingBuild', 1);
|
| + assert.propertyVal(chromiumBuilders.Linux, 'masterUrl', 'https://build.chromium.org/p/chromium');
|
| + assert.propertyVal(chromiumBuilders.Linux, 'failingBuildCount', 2);
|
| + assert.propertyVal(chromiumBuilders.Linux, 'annotation', linuxAnnotation);
|
| +
|
| + assert.equal(Object.size(chromiumBuilders.Win), 7);
|
| + assert.propertyVal(chromiumBuilders.Win, 'key', 'https_//build.chromium.org/p/chromium::Win::3::unit_tests::MyTest');
|
| + assert.propertyVal(chromiumBuilders.Win, 'actual', 'another_type');
|
| + assert.propertyVal(chromiumBuilders.Win, 'lastFailingBuild', 5);
|
| + assert.propertyVal(chromiumBuilders.Win, 'earliestFailingBuild', 3);
|
| + assert.propertyVal(chromiumBuilders.Win, 'masterUrl', 'https://build.chromium.org/p/chromium');
|
| + assert.propertyVal(chromiumBuilders.Win, 'failingBuildCount', 42);
|
| + assert.propertyVal(chromiumBuilders.Win, 'annotation', winAnnotation);
|
| +
|
| + assert.equal(Object.size(failuresByTree.blink), 1);
|
| + assert.property(failuresByTree.blink, '{"step":"LayoutTests","reason":"MyTest"}');
|
| + var blinkBuilders = failuresByTree.blink['{"step":"LayoutTests","reason":"MyTest"}'];
|
| + assert.equal(Object.size(blinkBuilders), 1);
|
| + assert.equal(Object.size(blinkBuilders.Linux), 7);
|
| + assert.propertyVal(blinkBuilders.Linux, 'key', 'https_//build.chromium.org/p/chromium.webkit::Linux::1::LayoutTests::MyTest');
|
| + assert.propertyVal(blinkBuilders.Linux, 'actual', 'a_type');
|
| + assert.propertyVal(blinkBuilders.Linux, 'lastFailingBuild', 2);
|
| + assert.propertyVal(blinkBuilders.Linux, 'earliestFailingBuild', 1);
|
| + assert.propertyVal(blinkBuilders.Linux, 'masterUrl', 'https://build.chromium.org/p/chromium.webkit');
|
| + assert.propertyVal(blinkBuilders.Linux, 'failingBuildCount', 2);
|
| + assert.propertyVal(blinkBuilders.Linux, 'annotation', blinkAnnotation);
|
| + });
|
| + });
|
| +
|
| describe('.update', function() {
|
| it('should update everything', function(done) {
|
| var simulator = new NetworkSimulator(assert, done);
|
| @@ -203,8 +331,6 @@ describe('ct-failures', function() {
|
| netData.alerts.alerts[0].last_failing_build = 2490;
|
|
|
| return analyzer.update().then(function() {
|
| - console.log(analyzer.failures.chromium[0].data.failures[0].resultNodesByBuilder["Linux Tests (dbg)(1)"].lastFailingBuild);
|
| - console.log(group.data.failures[0].resultNodesByBuilder["Linux Tests (dbg)(1)"].lastFailingBuild);
|
| assert.strictEqual(analyzer.failures.chromium[0], group)
|
| assert.strictEqual(group.data.failures[0], failure)
|
| assert.strictEqual(failure.resultNodesByBuilder, resultNodesByBuilder);
|
|
|