OLD | NEW |
| (Empty) |
1 <!-- | |
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 | |
4 found in the LICENSE file. | |
5 --> | |
6 | |
7 <link rel="import" href="../../lib/network-simulator.html"> | |
8 | |
9 <script> | |
10 (function() { | |
11 | |
12 var assert = chai.assert; | |
13 | |
14 describe('results script', function() { | |
15 | |
16 var MockResultsBaseURL = 'https://storage.googleapis.com/chromium-layout-test-
archives/Mock_Builder/results/layout-test-results'; | |
17 | |
18 it('should trim extensions', function() { | |
19 assert.equal(results._trimExtension('xyz'), 'xyz'); | |
20 assert.equal(results._trimExtension('xy.z'), 'xy'); | |
21 assert.equal(results._trimExtension('x.yz'), 'x'); | |
22 assert.equal(results._trimExtension('x.y.z'), 'x.y'); | |
23 assert.equal(results._trimExtension('.xyz'), ''); | |
24 assert.equal(results._trimExtension(''), ''); | |
25 }); | |
26 | |
27 it('should create failure info', function() { | |
28 var failureInfo = results.failureInfo('userscripts/another-test.html', 'Mock
Builder', 'FAIL PASS'); | |
29 assert.deepEqual(failureInfo, { | |
30 'testName': 'userscripts/another-test.html', | |
31 'builderName': 'Mock Builder', | |
32 'failureTypeList': ['FAIL', 'PASS'], | |
33 }); | |
34 }); | |
35 | |
36 it('should get result kind', function() { | |
37 assert.equal(results.resultKind('https://example.com/foo-actual.txt'), 'actu
al'); | |
38 assert.equal(results.resultKind('https://example.com/foo-expected.txt'), 'ex
pected'); | |
39 assert.equal(results.resultKind('https://example.com/foo-diff.txt'), 'diff')
; | |
40 assert.equal(results.resultKind('https://example.com/foo.bar-actual.txt'), '
actual'); | |
41 assert.equal(results.resultKind('https://example.com/foo.bar-expected.txt'),
'expected'); | |
42 assert.equal(results.resultKind('https://example.com/foo.bar-diff.txt'), 'di
ff'); | |
43 assert.equal(results.resultKind('https://example.com/foo-actual.png'), 'actu
al'); | |
44 assert.equal(results.resultKind('https://example.com/foo-expected.png'), 'ex
pected'); | |
45 assert.equal(results.resultKind('https://example.com/foo-diff.png'), 'diff')
; | |
46 assert.equal(results.resultKind('https://example.com/foo-pretty-diff.html'),
'diff'); | |
47 assert.equal(results.resultKind('https://example.com/foo-wdiff.html'), 'diff
'); | |
48 assert.equal(results.resultKind('https://example.com/foo-xyz.html'), 'unknow
n'); | |
49 }); | |
50 | |
51 it('should get result type', function() { | |
52 assert.equal(results.resultType('https://example.com/foo-actual.txt'), 'text
'); | |
53 assert.equal(results.resultType('https://example.com/foo-expected.txt'), 'te
xt'); | |
54 assert.equal(results.resultType('https://example.com/foo-diff.txt'), 'text')
; | |
55 assert.equal(results.resultType('https://example.com/foo.bar-actual.txt'), '
text'); | |
56 assert.equal(results.resultType('https://example.com/foo.bar-expected.txt'),
'text'); | |
57 assert.equal(results.resultType('https://example.com/foo.bar-diff.txt'), 'te
xt'); | |
58 assert.equal(results.resultType('https://example.com/foo-actual.png'), 'imag
e'); | |
59 assert.equal(results.resultType('https://example.com/foo-expected.png'), 'im
age'); | |
60 assert.equal(results.resultType('https://example.com/foo-diff.png'), 'image'
); | |
61 assert.equal(results.resultType('https://example.com/foo-pretty-diff.html'),
'text'); | |
62 assert.equal(results.resultType('https://example.com/foo-wdiff.html'), 'text
'); | |
63 assert.equal(results.resultType('https://example.com/foo.xyz'), 'text'); | |
64 }); | |
65 | |
66 it('fetchResultsURLS', function(done) { | |
67 var simulator = new NetworkSimulator(assert, done); | |
68 | |
69 var probedURLs = []; | |
70 simulator.probe = function(url) { | |
71 probedURLs.push(url); | |
72 if (url.endsWith('.txt')) | |
73 return Promise.resolve(); | |
74 else if (/taco.+png$/.test(url)) | |
75 return Promise.resolve(); | |
76 else | |
77 return Promise.reject(); | |
78 }; | |
79 simulator.runTest(function() { | |
80 return Promise.resolve().then(function() { | |
81 return results.fetchResultsURLs({ | |
82 'builderName': 'Mock Builder', | |
83 'testName': 'userscripts/another-test.html', | |
84 'failureTypeList': ['IMAGE', 'CRASH'], | |
85 }).then(function(resultURLs) { | |
86 assert.deepEqual(resultURLs, [ | |
87 MockResultsBaseURL + '/userscripts/another-test-crash-log.txt' | |
88 ]); | |
89 }); | |
90 }).then(function() { | |
91 return results.fetchResultsURLs({ | |
92 'builderName': 'Mock Builder', | |
93 'testName': 'userscripts/another-test.html', | |
94 'failureTypeList': ['TIMEOUT'], | |
95 }).then(function(resultURLs) { | |
96 assert.deepEqual(resultURLs, []); | |
97 }); | |
98 }).then(function() { | |
99 return results.fetchResultsURLs({ | |
100 'builderName': 'Mock Builder', | |
101 'testName': 'userscripts/taco.html', | |
102 'failureTypeList': ['IMAGE', 'IMAGE+TEXT'], | |
103 }).then(function(resultURLs) { | |
104 assert.deepEqual(resultURLs, [ | |
105 MockResultsBaseURL + '/userscripts/taco-expected.png', | |
106 MockResultsBaseURL + '/userscripts/taco-actual.png', | |
107 MockResultsBaseURL + '/userscripts/taco-diff.png', | |
108 MockResultsBaseURL + '/userscripts/taco-expected.txt', | |
109 MockResultsBaseURL + '/userscripts/taco-actual.txt', | |
110 MockResultsBaseURL + '/userscripts/taco-diff.txt', | |
111 ]); | |
112 }); | |
113 }).then(function() { | |
114 return results.fetchResultsURLs({ | |
115 'builderName': 'Mock Builder', | |
116 'testName': 'userscripts/another-test.html', | |
117 'failureTypeList': ['LEAK'], | |
118 }).then(function(resultURLs) { | |
119 assert.deepEqual(resultURLs, [ | |
120 MockResultsBaseURL + '/userscripts/another-test-leak-log.txt' | |
121 ]); | |
122 }); | |
123 }).then(function() { | |
124 assert.deepEqual(probedURLs, [ | |
125 MockResultsBaseURL + '/userscripts/another-test-expected.png', | |
126 MockResultsBaseURL + '/userscripts/another-test-actual.png', | |
127 MockResultsBaseURL + '/userscripts/another-test-diff.png', | |
128 MockResultsBaseURL + '/userscripts/another-test-crash-log.txt', | |
129 MockResultsBaseURL + '/userscripts/taco-expected.png', | |
130 MockResultsBaseURL + '/userscripts/taco-actual.png', | |
131 MockResultsBaseURL + '/userscripts/taco-diff.png', | |
132 MockResultsBaseURL + '/userscripts/taco-actual.txt', | |
133 MockResultsBaseURL + '/userscripts/taco-expected.txt', | |
134 MockResultsBaseURL + '/userscripts/taco-diff.txt', | |
135 MockResultsBaseURL + '/userscripts/another-test-leak-log.txt', | |
136 ]); | |
137 }); | |
138 }); | |
139 }); | |
140 }); | |
141 | |
142 })(); | |
143 </script> | |
OLD | NEW |