Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(755)

Side by Side Diff: Tools/GardeningServer/ui/test/ct-results-detail-tests.html

Issue 459463003: Convert moar Sheriff-o-Matic tests to Polymer. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 <!-- 1 <!--
2 Copyright 2014 The Chromium Authors. All rights reserved. 2 Copyright 2014 The Chromium Authors. All rights reserved.
3 Use of this source code is governed by a BSD-style license that can be 3 Use of this source code is governed by a BSD-style license that can be
4 found in the LICENSE file. 4 found in the LICENSE file.
5 --> 5 -->
6 6
7 <link rel="import" href="ct-results-detail.html"> 7 <link rel="import" href="../ct-results-detail.html">
8 8
9 <link rel="import" href="../model/ct-failure.html"> 9 <link rel="import" href="../../model/ct-failure.html">
10 10
11 <script> 11 <script>
12 (function () { 12 (function () {
13 13
14 module("ct-results-detail"); 14 var assert = chai.assert;
15 15
16 asyncTest("image+text", 4, function() { 16 describe('ct-results-detail', function() {
17 var simulator = new NetworkSimulator(); 17 describe('webkit failures', function() {
18 var probedUrls = []; 18 var resultsDetail
19 var probedUrls;
19 20
20 simulator.probe = function(url) 21 // Set to test different types.
21 { 22 var resultType = '';
22 probedUrls.push(url); 23 var extensions = [];
23 if (url.endsWith('.txt') || url.endsWith('.png')) 24
24 return Promise.resolve(); 25 beforeEach(function(done) {
25 else 26 var simulator = new NetworkSimulator(assert, done);
27 probedUrls = [];
28
29 simulator.probe = function(url) {
30 probedUrls.push(url);
31 for (var i = 0; i < extensions.length; i++) {
32 if (url.endsWith(extensions[i]))
33 return Promise.resolve();
34 }
26 return Promise.reject(); 35 return Promise.reject();
27 }; 36 };
28 37
29 simulator.runTest(function() { 38 // FIXME: Use a proper mock model object.
30 var comparisonResult = document.createElement('ct-results-detail'); 39 var failure = new CTFailure(
31 comparisonResult.builder = 'dummy builder'; 40 "testName", "dummy/test.html",
32 // FIXME: Use a proper mock model object. 41 {
33 comparisonResult.failure = new CTFailure( 42 "dummy builder": {
34 "testName", "dummy/test.html", 43 "actual": resultType,
35 { 44 },
36 "dummy builder": { 45 }, 177164, 177165
37 "actual": "IMAGE+TEXT", 46 );
38 },
39 }, 177164, 177165
40 );
41 47
42 comparisonResult.async(function() { 48 simulator.runTest(function() {
43 deepEqual(probedUrls, [ 49 resultsDetail = document.createElement('ct-results-detail');
50 resultsDetail.builder = 'dummy builder';
51 resultsDetail.failure = failure;
52 });
53
54 setTimeout(done);
55 });
56
57 describe('image+text', function() {
58 before(function() {
59 resultType = "IMAGE+TEXT";
60 extensions = ['.txt', '.png'];
61 });
62
63 it('should fetch the correct URLs', function() {
64 assert.deepEqual(probedUrls, [
44 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-expected.png', 65 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-expected.png',
45 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-actual.png', 66 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-actual.png',
46 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-diff.png', 67 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-diff.png',
47 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-actual.txt', 68 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-actual.txt',
48 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-expected.txt', 69 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-expected.txt',
49 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-diff.txt', 70 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-diff.txt',
50 ]); 71 ]);
51 72
52 var comparisons = comparisonResult.shadowRoot.querySelectorAll('ct-results -comparison'); 73 assert.lengthOf(resultsDetail.shadowRoot.querySelectorAll('ct-results-co mparison'), 2);
53 equal(comparisons.length, 2); 74 assert.lengthOf(resultsDetail.shadowRoot.querySelectorAll('ct-test-outpu t'), 0);
54 equal(comparisonResult.shadowRoot.querySelectorAll('ct-test-output').lengt h, 0); 75 });
76 });
55 77
56 start(); 78 describe('crash', function() {
79 before(function() {
80 resultType = "CRASH";
81 extensions = ['.txt'];
82 });
83
84 it('should fetch the correct URLs', function() {
85 assert.deepEqual(probedUrls, [
86 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-crash-log.txt',
87 ]);
88
89 assert.lengthOf(resultsDetail.shadowRoot.querySelectorAll('ct-test-outpu t'), 1);
90 assert.lengthOf(resultsDetail.shadowRoot.querySelectorAll('ct-results-co mparison'), 0);
91 });
92 });
93 });
94
95 describe('failures', function() {
96 var result;
97 var expectedUrl;
98
99 afterEach(function() {
100 var outputs = result.shadowRoot.querySelectorAll('ct-test-output');
101 assert.lengthOf(outputs, 1);
102 assert.equal(outputs[0].url, expectedUrl);
103 assert.lengthOf(result.shadowRoot.querySelectorAll('ct-results-comparison' ), 0);
104 });
105
106 describe('unknown failures', function() {
107 it('should show the failure output', function(done) {
108 result = document.createElement('ct-results-detail');
109
110 result.builder = 'dummy builder';
111
112 var resultsByBuilder = {
113 "dummy builder": {
114 actual: "UNKNOWN",
115 lastFailingBuild: 124,
116 masterUrl: 'http://masterurl/'
117 },
118 };
119 result.failure = new CTFailure('foo_step', 'test.html', resultsByBuilder , 123, 124);
120 expectedUrl = 'http://masterurl//builders/dummy%20builder/builds/124/ste ps/foo_step/logs/stdio';
121
122 setTimeout(done);
123 });
124 });
125
126 describe('failures', function() {
127 it('should show the failure output', function(done) {
128 result = document.createElement('ct-results-detail');
129
130 result.builder = 'dummy builder';
131
132 var resultsByBuilder = {
133 "dummy builder": {
134 actual: "FAIL",
135 lastFailingBuild: 124,
136 masterUrl: 'http://masterurl/'
137 },
138 };
139 result.failure = new CTFailure('foo_step', 'TestSuite.TestName', results ByBuilder, 123, 124);
140 expectedUrl = 'http://masterurl//builders/dummy%20builder/builds/124/ste ps/foo_step/logs/TestName';
141
142 setTimeout(done);
143 });
57 }); 144 });
58 }); 145 });
59 }); 146 });
60 147
61 asyncTest("crash", 4, function() {
62 var simulator = new NetworkSimulator();
63 var probedUrls = [];
64
65 simulator.probe = function(url)
66 {
67 probedUrls.push(url);
68 if (url.endsWith('.txt'))
69 return Promise.resolve();
70 else
71 return Promise.reject();
72 };
73
74 simulator.runTest(function() {
75 var crashResult = document.createElement('ct-results-detail');
76 crashResult.builder = 'dummy builder';
77 // FIXME: Use a proper mock model object.
78 crashResult.failure = {
79 "testName": "dummy/test.html",
80 "resultNodesByBuilder": {
81 "dummy builder": {
82 "actual": "CRASH",
83 },
84 },
85 "oldestFailingRevision": 177164,
86 "newestPassingRevision": 177165,
87 };
88
89 crashResult.async(function() {
90 deepEqual(probedUrls, [
91 'https://storage.googleapis.com/chromium-layout-test-archives/dummy_bu ilder/results/layout-test-results/dummy/test-crash-log.txt',
92 ]);
93
94 var crashOutputs = crashResult.shadowRoot.querySelectorAll('ct-test-output ');
95 equal(crashOutputs.length, 1);
96 equal(crashResult.shadowRoot.querySelectorAll('ct-results-comparison').len gth, 0);
97 start();
98 });
99 });
100 });
101
102 asyncTest("unknown", 3, function() {
103 var result = document.createElement('ct-results-detail');
104
105 result.builder = 'dummy builder';
106
107 var resultsByBuilder = {
108 "dummy builder": {
109 actual: "UNKNOWN",
110 lastFailingBuild: 124,
111 masterUrl: 'http://masterurl/'
112 },
113 };
114 result.failure = new CTFailure('foo_step', 'test.html', resultsByBuilder, 123, 124);
115
116 requestAnimationFrame(function() {
117 var outputs = result.shadowRoot.querySelectorAll('ct-test-output');
118 equal(outputs.length, 1);
119 equal(outputs[0].url, 'http://masterurl//builders/dummy%20builder/builds/124 /steps/foo_step/logs/stdio');
120 equal(result.shadowRoot.querySelectorAll('ct-results-comparison').length, 0) ;
121 start();
122 });
123 });
124
125 asyncTest("unknown", 3, function() {
126 var result = document.createElement('ct-results-detail');
127
128 result.builder = 'dummy builder';
129
130 var resultsByBuilder = {
131 "dummy builder": {
132 actual: "FAIL",
133 lastFailingBuild: 124,
134 masterUrl: 'http://masterurl/'
135 },
136 };
137 result.failure = new CTFailure('foo_step', 'TestSuite.TestName', resultsByBuil der, 123, 124);
138
139 requestAnimationFrame(function() {
140 var outputs = result.shadowRoot.querySelectorAll('ct-test-output');
141 equal(outputs.length, 1);
142 equal(outputs[0].url, 'http://masterurl//builders/dummy%20builder/builds/124 /steps/foo_step/logs/TestName');
143 equal(result.shadowRoot.querySelectorAll('ct-results-comparison').length, 0) ;
144 start();
145 });
146 });
147
148 })() 148 })()
149 </script> 149 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698