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

Side by Side Diff: tools/telemetry/telemetry/page/html_page_measurement_results_unittest.py

Issue 83813003: Cleanup of page_measurement_results object (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month 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 # Copyright 2013 The Chromium Authors. All rights reserved. 1 # Copyright 2013 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 import os 4 import os
5 import StringIO 5 import StringIO
6 import unittest 6 import unittest
7 7
8 from telemetry.page import html_page_measurement_results 8 from telemetry.page import html_page_measurement_results
9 from telemetry.page import page_set 9 from telemetry.page import page_set
10 10
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
45 def test_basic_summary(self): 45 def test_basic_summary(self):
46 test_page_set = _MakePageSet() 46 test_page_set = _MakePageSet()
47 output_file = StringIOFile() 47 output_file = StringIOFile()
48 48
49 # Run the first time and verify the results are written to the HTML file. 49 # Run the first time and verify the results are written to the HTML file.
50 results = DeterministicHtmlPageMeasurementResults( 50 results = DeterministicHtmlPageMeasurementResults(
51 output_file, 'test_name', False, False, 'browser_type') 51 output_file, 'test_name', False, False, 'browser_type')
52 results.WillMeasurePage(test_page_set.pages[0]) 52 results.WillMeasurePage(test_page_set.pages[0])
53 results.Add('a', 'seconds', 3) 53 results.Add('a', 'seconds', 3)
54 results.DidMeasurePage() 54 results.DidMeasurePage()
55 results.AddSuccess(test_page_set.pages[0])
56
55 results.WillMeasurePage(test_page_set.pages[1]) 57 results.WillMeasurePage(test_page_set.pages[1])
56 results.Add('a', 'seconds', 7) 58 results.Add('a', 'seconds', 7)
57 results.DidMeasurePage() 59 results.DidMeasurePage()
60 results.AddSuccess(test_page_set.pages[1])
58 61
59 results.PrintSummary() 62 results.PrintSummary()
60 expected = ( 63 results.GetResults()
61 '<script id="results-json" type="application/json">' 64 expected = {
62 '[{' 65 "platform": "browser_type",
63 '"platform": "browser_type", ' 66 "buildTime": "build_time",
64 '"buildTime": "build_time", ' 67 "label": None,
65 '"label": null, ' 68 "tests": {
66 '"tests": {' 69 "test_name": {
67 '"test_name": {' 70 "metrics": {
68 '"metrics": {' 71 "a": {
69 '"a": {' 72 "current": [3, 7],
70 '"current": [3, 7], ' 73 "units": "seconds",
71 '"units": "seconds", ' 74 "important": True
72 '"important": true' 75 },
73 '}, ' 76 "telemetry_page_measurement_results.num_failed": {
74 '"telemetry_page_measurement_results.num_failed": {' 77 "current": [0],
75 '"current": [0], ' 78 "units": "count",
76 '"units": "count", ' 79 "important": False
77 '"important": false' 80 },
78 '}, ' 81 "a_by_url.http://www.bar.com/": {
79 '"a_by_url.http://www.bar.com/": {' 82 "current": [7],
80 '"current": [7], ' 83 "units": "seconds",
81 '"units": "seconds", ' 84 "important": False
82 '"important": false' 85 },
83 '}, ' 86 "telemetry_page_measurement_results.num_errored": {
84 '"telemetry_page_measurement_results.num_errored": {' 87 "current": [0],
85 '"current": [0], ' 88 "units": "count",
86 '"units": "count", ' 89 "important": False
87 '"important": false' 90 },
88 '}, ' 91 "a_by_url.http://www.foo.com/": {
89 '"a_by_url.http://www.foo.com/": {' 92 "current": [3],
90 '"current": [3], ' 93 "units": "seconds",
91 '"units": "seconds", ' 94 "important": False
92 '"important": false' 95 }
93 '}' 96 }
94 '}' 97 }
95 '}' 98 },
96 '}, ' 99 "revision": "revision"
97 '"revision": "revision"' 100 }
98 '}]' 101 self.assertEquals(expected, results.GetResults())
99 '</script>')
100 self.assertIn(expected, output_file.getvalue())
101 102
102 # Run the second time and verify the results are appended to the HTML file. 103 # Run the second time and verify the results are appended to the HTML file.
103 output_file.seek(0) 104 output_file.seek(0)
104 results = DeterministicHtmlPageMeasurementResults( 105 results = DeterministicHtmlPageMeasurementResults(
105 output_file, 'test_name', False, False, 'browser_type') 106 output_file, 'test_name', False, False, 'browser_type')
106 results.WillMeasurePage(test_page_set.pages[0]) 107 results.WillMeasurePage(test_page_set.pages[0])
107 results.Add('a', 'seconds', 4) 108 results.Add('a', 'seconds', 4)
108 results.DidMeasurePage() 109 results.DidMeasurePage()
110 results.AddSuccess(test_page_set.pages[0])
111
109 results.WillMeasurePage(test_page_set.pages[1]) 112 results.WillMeasurePage(test_page_set.pages[1])
110 results.Add('a', 'seconds', 8) 113 results.Add('a', 'seconds', 8)
111 results.DidMeasurePage() 114 results.DidMeasurePage()
115 results.AddSuccess(test_page_set.pages[1])
112 116
113 results.PrintSummary() 117 results.PrintSummary()
114 expected = ( 118 expected = [
115 '<script id="results-json" type="application/json">' 119 {
116 '[{' 120 "platform": "browser_type",
117 '"platform": "browser_type", ' 121 "buildTime": "build_time",
118 '"buildTime": "build_time", ' 122 "label": None,
119 '"revision": "revision", ' 123 "tests": {
120 '"tests": {' 124 "test_name": {
121 '"test_name": {' 125 "metrics": {
122 '"metrics": {' 126 "a": {
123 '"a": {' 127 "current": [3, 7],
124 '"current": [3, 7], ' 128 "units": "seconds",
125 '"units": "seconds", ' 129 "important": True
126 '"important": true' 130 },
127 '}, ' 131 "telemetry_page_measurement_results.num_failed": {
128 '"telemetry_page_measurement_results.num_failed": {' 132 "current": [0],
129 '"current": [0], ' 133 "units": "count",
130 '"units": "count", ' 134 "important": False
131 '"important": false' 135 },
132 '}, ' 136 "a_by_url.http://www.bar.com/": {
133 '"a_by_url.http://www.bar.com/": {' 137 "current": [7],
134 '"current": [7], ' 138 "units": "seconds",
135 '"units": "seconds", ' 139 "important": False
136 '"important": false' 140 },
137 '}, ' 141 "telemetry_page_measurement_results.num_errored": {
138 '"telemetry_page_measurement_results.num_errored": {' 142 "current": [0],
139 '"current": [0], ' 143 "units": "count",
140 '"units": "count", ' 144 "important": False
141 '"important": false' 145 },
142 '}, ' 146 "a_by_url.http://www.foo.com/": {
143 '"a_by_url.http://www.foo.com/": {' 147 "current": [3],
144 '"current": [3], ' 148 "units": "seconds",
145 '"units": "seconds", ' 149 "important": False
146 '"important": false' 150 }
147 '}' 151 }
148 '}' 152 }
149 '}' 153 },
150 '}, ' 154 "revision": "revision"
151 '"label": null' 155 },
152 '}, ' 156 {
153 '{' 157 "platform": "browser_type",
154 '"platform": "browser_type", ' 158 "buildTime": "build_time",
155 '"buildTime": "build_time", ' 159 "label": None,
156 '"label": null, ' 160 "tests": {
157 '"tests": {' 161 "test_name": {
158 '"test_name": {' 162 "metrics": {
159 '"metrics": {' 163 "a": {
160 '"a": {' 164 "current": [4, 8],
161 '"current": [4, 8], ' 165 "units": "seconds",
162 '"units": "seconds", ' 166 "important": True
163 '"important": true' 167 },
164 '}, ' 168 "telemetry_page_measurement_results.num_failed": {
165 '"telemetry_page_measurement_results.num_failed": {' 169 "current": [0],
166 '"current": [0], ' 170 "units": "count",
167 '"units": "count", ' 171 "important": False,
168 '"important": false' 172 },
169 '}, ' 173 "a_by_url.http://www.bar.com/": {
170 '"a_by_url.http://www.bar.com/": {' 174 "current": [8],
171 '"current": [8], ' 175 "units": "seconds",
172 '"units": "seconds", ' 176 "important": False
173 '"important": false' 177 },
174 '}, ' 178 "telemetry_page_measurement_results.num_errored": {
175 '"telemetry_page_measurement_results.num_errored": {' 179 "current": [0],
176 '"current": [0], ' 180 "units": "count",
177 '"units": "count", ' 181 "important": False
178 '"important": false' 182 },
179 '}, ' 183 "a_by_url.http://www.foo.com/": {
180 '"a_by_url.http://www.foo.com/": {' 184 "current": [4],
181 '"current": [4], ' 185 "units": "seconds",
182 '"units": "seconds", ' 186 "important": False
183 '"important": false' 187 }
184 '}' 188 }
185 '}' 189 }
186 '}' 190 },
187 '}, ' 191 "revision": "revision"
188 '"revision": "revision"' 192 }]
189 '}]' 193 self.assertEquals(expected, results.GetCombinedResults())
190 '</script>')
191 self.assertIn(expected, output_file.getvalue())
192 last_output_len = len(output_file.getvalue()) 194 last_output_len = len(output_file.getvalue())
193 195
194 # Now reset the results and verify the old ones are gone. 196 # Now reset the results and verify the old ones are gone.
195 output_file.seek(0) 197 output_file.seek(0)
196 results = DeterministicHtmlPageMeasurementResults( 198 results = DeterministicHtmlPageMeasurementResults(
197 output_file, 'test_name', True, False, 'browser_type') 199 output_file, 'test_name', True, False, 'browser_type')
198 results.WillMeasurePage(test_page_set.pages[0]) 200 results.WillMeasurePage(test_page_set.pages[0])
199 results.Add('a', 'seconds', 5) 201 results.Add('a', 'seconds', 5)
200 results.DidMeasurePage() 202 results.DidMeasurePage()
203 results.AddSuccess(test_page_set.pages[0])
204
201 results.WillMeasurePage(test_page_set.pages[1]) 205 results.WillMeasurePage(test_page_set.pages[1])
202 results.Add('a', 'seconds', 9) 206 results.Add('a', 'seconds', 9)
203 results.DidMeasurePage() 207 results.DidMeasurePage()
208 results.AddSuccess(test_page_set.pages[1])
204 209
205 results.PrintSummary() 210 results.PrintSummary()
206 expected = ( 211 expected = [{
207 '<script id="results-json" type="application/json">' 212 "platform": "browser_type",
208 '[{' 213 "buildTime": "build_time",
209 '"platform": "browser_type", ' 214 "label": None,
210 '"buildTime": "build_time", ' 215 "tests": {
211 '"label": null, ' 216 "test_name": {
212 '"tests": {' 217 "metrics": {
213 '"test_name": {' 218 "a": {
214 '"metrics": {' 219 "current": [5, 9],
215 '"a": {' 220 "units": "seconds",
216 '"current": [5, 9], ' 221 "important": True
217 '"units": "seconds", ' 222 },
218 '"important": true' 223 "telemetry_page_measurement_results.num_failed": {
219 '}, ' 224 "current": [0],
220 '"telemetry_page_measurement_results.num_failed": {' 225 "units": "count",
221 '"current": [0], ' 226 "important": False
222 '"units": "count", ' 227 },
223 '"important": false' 228 "a_by_url.http://www.bar.com/": {
224 '}, ' 229 "current": [9],
225 '"a_by_url.http://www.bar.com/": {' 230 "units": "seconds",
226 '"current": [9], ' 231 "important": False
227 '"units": "seconds", ' 232 },
228 '"important": false' 233 "telemetry_page_measurement_results.num_errored": {
229 '}, ' 234 "current": [0],
230 '"telemetry_page_measurement_results.num_errored": {' 235 "units": "count",
231 '"current": [0], ' 236 "important": False
232 '"units": "count", ' 237 },
233 '"important": false' 238 "a_by_url.http://www.foo.com/": {
234 '}, ' 239 "current": [5],
235 '"a_by_url.http://www.foo.com/": {' 240 "units": "seconds",
236 '"current": [5], ' 241 "important": False
237 '"units": "seconds", ' 242 }
238 '"important": false' 243 }
239 '}' 244 }
240 '}' 245 },
241 '}' 246 "revision": "revision"
242 '}, ' 247 }]
243 '"revision": "revision"' 248 self.assertEquals(expected, results.GetCombinedResults())
244 '}]'
245 '</script>')
246 self.assertIn(expected, output_file.getvalue())
247 self.assertTrue(len(output_file.getvalue()) < last_output_len) 249 self.assertTrue(len(output_file.getvalue()) < last_output_len)
OLDNEW
« no previous file with comments | « tools/telemetry/telemetry/page/html_page_measurement_results.py ('k') | tools/telemetry/telemetry/page/page.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698