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

Side by Side Diff: tools/telemetry/telemetry/internal/results/html_output_formatter_unittest.py

Issue 1313243003: [Telemetry] Introduce SummarizableValue. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 3 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
OLDNEW
1 # Copyright 2014 The Chromium Authors. All rights reserved. 1 # Copyright 2014 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 datetime 4 import datetime
5 import os 5 import os
6 import StringIO 6 import StringIO
7 import unittest 7 import unittest
8 8
9 from telemetry import benchmark 9 from telemetry import benchmark
10 from telemetry import story 10 from telemetry import story
11 from telemetry.internal.results import html_output_formatter 11 from telemetry.internal.results import html_output_formatter
12 from telemetry.internal.results import page_test_results 12 from telemetry.internal.results import page_test_results
13 from telemetry import page as page_module 13 from telemetry import page as page_module
14 from telemetry.value import improvement_direction
14 from telemetry.value import scalar 15 from telemetry.value import scalar
15 16
16 17
17 def _MakeStorySet(): 18 def _MakeStorySet():
18 story_set = story.StorySet(base_dir=os.path.dirname(__file__)) 19 story_set = story.StorySet(base_dir=os.path.dirname(__file__))
19 story_set.AddStory( 20 story_set.AddStory(
20 page_module.Page('http://www.foo.com/', story_set, story_set.base_dir)) 21 page_module.Page('http://www.foo.com/', story_set, story_set.base_dir))
21 story_set.AddStory( 22 story_set.AddStory(
22 page_module.Page('http://www.bar.com/', story_set, story_set.base_dir)) 23 page_module.Page('http://www.bar.com/', story_set, story_set.base_dir))
23 story_set.AddStory( 24 story_set.AddStory(
(...skipping 24 matching lines...) Expand all
48 self.maxDiff = 100000 49 self.maxDiff = 100000
49 50
50 def test_basic_summary(self): 51 def test_basic_summary(self):
51 test_story_set = _MakeStorySet() 52 test_story_set = _MakeStorySet()
52 output_file = StringIOFile() 53 output_file = StringIOFile()
53 54
54 # Run the first time and verify the results are written to the HTML file. 55 # Run the first time and verify the results are written to the HTML file.
55 results = page_test_results.PageTestResults() 56 results = page_test_results.PageTestResults()
56 results.WillRunPage(test_story_set.stories[0]) 57 results.WillRunPage(test_story_set.stories[0])
57 results.AddValue(scalar.ScalarValue( 58 results.AddValue(scalar.ScalarValue(
58 test_story_set.stories[0], 'a', 'seconds', 3)) 59 test_story_set.stories[0], 'a', 'seconds', 3,
60 improvement_direction=improvement_direction.DOWN))
59 results.DidRunPage(test_story_set.stories[0]) 61 results.DidRunPage(test_story_set.stories[0])
60 62
61 results.WillRunPage(test_story_set.stories[1]) 63 results.WillRunPage(test_story_set.stories[1])
62 results.AddValue(scalar.ScalarValue( 64 results.AddValue(scalar.ScalarValue(
63 test_story_set.stories[1], 'a', 'seconds', 7)) 65 test_story_set.stories[1], 'a', 'seconds', 7,
66 improvement_direction=improvement_direction.DOWN))
64 results.DidRunPage(test_story_set.stories[1]) 67 results.DidRunPage(test_story_set.stories[1])
65 68
66 formatter = DeterministicHtmlOutputFormatter( 69 formatter = DeterministicHtmlOutputFormatter(
67 output_file, FakeMetadataForTest(), False, False, 'browser_type') 70 output_file, FakeMetadataForTest(), False, False, 'browser_type')
68 formatter.Format(results) 71 formatter.Format(results)
69 expected = { 72 expected = {
70 "platform": "browser_type", 73 "platform": "browser_type",
71 "buildTime": "1998-09-04T13:00:00.007777", 74 "buildTime": "1998-09-04T13:00:00.007777",
72 "label": 'test_name (1998-09-04 13:00:00)', 75 "label": 'test_name (1998-09-04 13:00:00)',
73 "tests": { 76 "tests": {
(...skipping 23 matching lines...) Expand all
97 } 100 }
98 }, 101 },
99 } 102 }
100 self.assertEquals(expected, formatter.GetResults()) 103 self.assertEquals(expected, formatter.GetResults())
101 104
102 # Run the second time and verify the results are appended to the HTML file. 105 # Run the second time and verify the results are appended to the HTML file.
103 output_file.seek(0) 106 output_file.seek(0)
104 results = page_test_results.PageTestResults() 107 results = page_test_results.PageTestResults()
105 results.WillRunPage(test_story_set.stories[0]) 108 results.WillRunPage(test_story_set.stories[0])
106 results.AddValue(scalar.ScalarValue( 109 results.AddValue(scalar.ScalarValue(
107 test_story_set.stories[0], 'a', 'seconds', 4)) 110 test_story_set.stories[0], 'a', 'seconds', 4,
111 improvement_direction=improvement_direction.DOWN))
108 results.DidRunPage(test_story_set.stories[0]) 112 results.DidRunPage(test_story_set.stories[0])
109 113
110 results.WillRunPage(test_story_set.stories[1]) 114 results.WillRunPage(test_story_set.stories[1])
111 results.AddValue(scalar.ScalarValue( 115 results.AddValue(scalar.ScalarValue(
112 test_story_set.stories[1], 'a', 'seconds', 8)) 116 test_story_set.stories[1], 'a', 'seconds', 8,
117 improvement_direction=improvement_direction.DOWN))
113 results.DidRunPage(test_story_set.stories[1]) 118 results.DidRunPage(test_story_set.stories[1])
114 119
115 formatter = DeterministicHtmlOutputFormatter( 120 formatter = DeterministicHtmlOutputFormatter(
116 output_file, FakeMetadataForTest(), False, False, 'browser_type') 121 output_file, FakeMetadataForTest(), False, False, 'browser_type')
117 formatter.Format(results) 122 formatter.Format(results)
118 expected = [ 123 expected = [
119 { 124 {
120 "platform": "browser_type", 125 "platform": "browser_type",
121 "buildTime": "1998-09-04T13:00:00.007777", 126 "buildTime": "1998-09-04T13:00:00.007777",
122 "label": 'test_name (1998-09-04 13:00:00)', 127 "label": 'test_name (1998-09-04 13:00:00)',
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
179 }, 184 },
180 }] 185 }]
181 self.assertEquals(expected, formatter.GetCombinedResults()) 186 self.assertEquals(expected, formatter.GetCombinedResults())
182 last_output_len = len(output_file.getvalue()) 187 last_output_len = len(output_file.getvalue())
183 188
184 # Now reset the results and verify the old ones are gone. 189 # Now reset the results and verify the old ones are gone.
185 output_file.seek(0) 190 output_file.seek(0)
186 results = page_test_results.PageTestResults() 191 results = page_test_results.PageTestResults()
187 results.WillRunPage(test_story_set.stories[0]) 192 results.WillRunPage(test_story_set.stories[0])
188 results.AddValue(scalar.ScalarValue( 193 results.AddValue(scalar.ScalarValue(
189 test_story_set.stories[0], 'a', 'seconds', 5)) 194 test_story_set.stories[0], 'a', 'seconds', 5,
195 improvement_direction=improvement_direction.DOWN))
190 results.DidRunPage(test_story_set.stories[0]) 196 results.DidRunPage(test_story_set.stories[0])
191 197
192 results.WillRunPage(test_story_set.stories[1]) 198 results.WillRunPage(test_story_set.stories[1])
193 results.AddValue(scalar.ScalarValue( 199 results.AddValue(scalar.ScalarValue(
194 test_story_set.stories[1], 'a', 'seconds', 9)) 200 test_story_set.stories[1], 'a', 'seconds', 9,
201 improvement_direction=improvement_direction.DOWN))
195 results.DidRunPage(test_story_set.stories[1]) 202 results.DidRunPage(test_story_set.stories[1])
196 203
197 formatter = DeterministicHtmlOutputFormatter( 204 formatter = DeterministicHtmlOutputFormatter(
198 output_file, FakeMetadataForTest(), True, False, 'browser_type') 205 output_file, FakeMetadataForTest(), True, False, 'browser_type')
199 formatter.Format(results) 206 formatter.Format(results)
200 expected = [{ 207 expected = [{
201 "platform": "browser_type", 208 "platform": "browser_type",
202 "buildTime": "1998-09-04T13:00:00.007777", 209 "buildTime": "1998-09-04T13:00:00.007777",
203 "label": 'test_name (1998-09-04 13:00:00)', 210 "label": 'test_name (1998-09-04 13:00:00)',
204 "tests": { 211 "tests": {
(...skipping 18 matching lines...) Expand all
223 "current": [5], 230 "current": [5],
224 "units": "seconds", 231 "units": "seconds",
225 "important": False 232 "important": False
226 } 233 }
227 } 234 }
228 } 235 }
229 }, 236 },
230 }] 237 }]
231 self.assertEquals(expected, formatter.GetCombinedResults()) 238 self.assertEquals(expected, formatter.GetCombinedResults())
232 self.assertTrue(len(output_file.getvalue()) < last_output_len) 239 self.assertTrue(len(output_file.getvalue()) < last_output_len)
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698