Index: scripts/slave/unittests/results_dashboard_test.py |
diff --git a/scripts/slave/unittests/results_dashboard_test.py b/scripts/slave/unittests/results_dashboard_test.py |
index c3c74182b255ddec5fe4ac801933b845cfa0fc98..e0041cb4e093d3888108c005d4bceb56a9a7c7bb 100755 |
--- a/scripts/slave/unittests/results_dashboard_test.py |
+++ b/scripts/slave/unittests/results_dashboard_test.py |
@@ -54,7 +54,7 @@ |
self.mox.UnsetStubs() |
shutil.rmtree(self.build_dir) |
- def _TestSendResults(self, send_results_args, expected_new_json, errors, |
+ def _SendResults(self, send_results_args, expected_new_json, errors, |
mock_timestamp=False, webkit_master=False): |
"""Test one call of SendResults with the given set of arguments. |
@@ -97,13 +97,10 @@ |
def test_SingleLogLine(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -128,17 +125,14 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_SupplementalColumns(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -170,20 +164,17 @@ |
'r_bar': 'SHA2', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_UnitsLogLine(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456", ' |
- ' "v8_rev": "2345", "units": "ms"}', |
- '{"traces": {"bam": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456", ' |
- ' "v8_rev": "2345", "units": ""}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456", ' |
+ ' "v8_rev": "2345", "units": "ms"}', |
+ '{"traces": {"bam": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456", ' |
+ ' "v8_rev": "2345", "units": ""}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -223,18 +214,15 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_ImportantLogLine(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"one": ["1.0", "5.0"], "two": ["2.0", "0.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345", "units": "ms", ' |
- '"important": ["one"]}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"one": ["1.0", "5.0"], "two": ["2.0", "0.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345", "units": "ms", ' |
+ '"important": ["one"]}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -276,20 +264,17 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_MultipleLogLines(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}', |
- '{"traces": {"box": ["101.0", "4.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', [ |
+ '{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}', |
+ '{"traces": {"box": ["101.0", "4.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -328,19 +313,15 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_ModifiedTraceNames(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"bar": ["100.0", "5.0"],' |
- ' "bar_ref": ["99.0", "2.0"],' |
- ' "baz/y": ["101.0", "3.0"], "notchanged": ["102.0", "1.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"bar": ["100.0", "5.0"], "bar_ref": ["99.0", "2.0"],' |
+ ' "baz/y": ["101.0", "3.0"], "notchanged": ["102.0", "1.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -407,24 +388,21 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_MultiValueRowUpload(self): |
args = [ |
- { |
- 'my_endure_graph-summary.dat': [ |
- '{"traces": {' |
- '"total_dom_nodes": [["10", "123"], ["20.5", "234"]],' |
- '"event_listeners": [["10", "12"], ["20.5", "40"]]},' |
- ' "rev": "12345",' |
- ' "webkit_rev": "6789",' |
- ' "webrtc_rev": "3456",' |
- ' "v8_rev": "2345",' |
- ' "units": "count",' |
- ' "units_x": "seconds",' |
- ' "stack": false}' |
- ], |
- }, |
+ 'my_endure_graph-summary.dat', |
+ ['{"traces": {' |
+ '"total_dom_nodes": [["10", "123"], ["20.5", "234"]],' |
+ '"event_listeners": [["10", "12"], ["20.5", "40"]]},' |
+ ' "rev": "12345",' |
+ ' "webkit_rev": "6789",' |
+ ' "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345",' |
+ ' "units": "count",' |
+ ' "units_x": "seconds",' |
+ ' "stack": false}'], |
'linux-release', |
'endure/test_name', |
'https://chrome-perf.googleplex.com', |
@@ -465,17 +443,14 @@ |
'r_v8_rev': '2345' |
}}])] |
errors = [None, None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_ByUrlGraph(self): |
args = [ |
- { |
- 'bar_by_url-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- '"v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar_by_url-summary.dat', |
+ ['{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ '"v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -500,22 +475,18 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
def test_GitHashToTimestamp(self): |
args = [ |
- { |
- 'mean_frame_time-summary.dat': [ |
- '{"traces":' |
- ' {"mean_frame_time": ["77.0964285714", "138.142773233"]},' |
- ' "rev": "2eca27b067e3e57c70e40b8b95d0030c5d7c1a7f",' |
- ' "webkit_rev": "bf9aa8d62561bb2e4d7bc09e9d9e8c6a665ddc88",' |
- ' "webrtc_rev": "bf9aa8d62561bb2e4d7bc09e9d9e8c6a665ddc86",' |
- ' "v8_rev": "bf9aa8d62561bb2e4d7bc09e9d9e8c6a665ddc87",' |
- ' "ver": "undefined", "chan": "undefined", "units": "ms",' |
- ' "important": ["mean_frame_time"]}' |
- ], |
- }, |
+ 'mean_frame_time-summary.dat', |
+ ['{"traces": {"mean_frame_time": ["77.0964285714", "138.142773233"]},' |
+ ' "rev": "2eca27b067e3e57c70e40b8b95d0030c5d7c1a7f",' |
+ ' "webkit_rev": "bf9aa8d62561bb2e4d7bc09e9d9e8c6a665ddc88",' |
+ ' "webrtc_rev": "bf9aa8d62561bb2e4d7bc09e9d9e8c6a665ddc86",' |
+ ' "v8_rev": "bf9aa8d62561bb2e4d7bc09e9d9e8c6a665ddc87",' |
+ ' "ver": "undefined", "chan": "undefined", "units": "ms",' |
+ ' "important": ["mean_frame_time"]}'], |
'linux-release', |
'smoothness_measurement', |
'https://chrome-perf.googleplex.com', |
@@ -543,22 +514,18 @@ |
'r_v8_rev': 'bf9aa8d62561bb2e4d7bc09e9d9e8c6a665ddc87', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors, mock_timestamp=True) |
+ self._SendResults(args, expected_new_json, errors, mock_timestamp=True) |
def test_WebkitUsesTimestamp(self): |
args = [ |
- { |
- 'mean_frame_time-summary.dat': [ |
- '{"traces":' |
- ' {"mean_frame_time": ["77.0964285714", "138.142773233"]},' |
- ' "rev": "12345",' |
- ' "webkit_rev": "23456",' |
- ' "webrtc_rev": "3456",' |
- ' "v8_rev": "34567",' |
- ' "ver": "undefined", "chan": "undefined", "units": "ms",' |
- ' "important": ["mean_frame_time"]}' |
- ], |
- }, |
+ 'mean_frame_time-summary.dat', |
+ ['{"traces": {"mean_frame_time": ["77.0964285714", "138.142773233"]},' |
+ ' "rev": "12345",' |
+ ' "webkit_rev": "23456",' |
+ ' "webrtc_rev": "3456",' |
+ ' "v8_rev": "34567",' |
+ ' "ver": "undefined", "chan": "undefined", "units": "ms",' |
+ ' "important": ["mean_frame_time"]}'], |
'linux-release', |
'smoothness_measurement', |
'https://chrome-perf.googleplex.com', |
@@ -586,18 +553,15 @@ |
'r_v8_rev': '34567', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors, mock_timestamp=True, |
+ self._SendResults(args, expected_new_json, errors, mock_timestamp=True, |
webkit_master=True) |
def test_FailureRetried(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -622,15 +586,12 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [urllib2.URLError('reason')] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
args2 = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["101.0", "6.0"]},' |
- ' "rev": "12346", "webkit_rev": "6790", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["101.0", "6.0"]},' |
+ ' "rev": "12346", "webkit_rev": "6790", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -656,17 +617,14 @@ |
} |
}])) |
errors = [None, None] |
- self._TestSendResults(args2, expected_new_json, errors) |
+ self._SendResults(args2, expected_new_json, errors) |
def test_SuccessNotRetried(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -691,15 +649,12 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [None] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
args2 = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["101.0", "6.0"]},' |
- ' "rev": "12346", "webkit_rev": "6790", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["101.0", "6.0"]},' |
+ ' "rev": "12346", "webkit_rev": "6790", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -725,17 +680,14 @@ |
} |
}])] |
errors = [None] |
- self._TestSendResults(args2, expected_new_json2, errors) |
+ self._SendResults(args2, expected_new_json2, errors) |
def test_FailureCached(self): |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["100.0", "5.0"]},' |
- ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
- ' "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["100.0", "5.0"]},' |
+ ' "rev": "12345", "webkit_rev": "6789", "webrtc_rev": "3456",' |
+ ' "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -760,7 +712,7 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [urllib2.URLError('reason')] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
cache_file = open(self.cache_filename, 'rb') |
actual_cache = cache_file.read() |
cache_file.close() |
@@ -820,12 +772,9 @@ |
cache_file.write(previous_lines) |
cache_file.close() |
args = [ |
- { |
- 'bar-summary.dat': [ |
- '{"traces": {"baz": ["102.0", "5.0"]},' |
- ' "rev": "12348", "webkit_rev": "6789", "v8_rev": "2345"}' |
- ], |
- }, |
+ 'bar-summary.dat', |
+ ['{"traces": {"baz": ["102.0", "5.0"]},' |
+ ' "rev": "12348", "webkit_rev": "6789", "v8_rev": "2345"}'], |
'linux-release', |
'foo', |
'https://chrome-perf.googleplex.com', |
@@ -850,7 +799,7 @@ |
'r_v8_rev': '2345', |
}}])] |
errors = [urllib2.URLError('reason')] |
- self._TestSendResults(args, expected_new_json, errors) |
+ self._SendResults(args, expected_new_json, errors) |
cache_file = open(self.cache_filename, 'rb') |
actual_cache_lines = [l.strip() for l in cache_file.readlines()] |
cache_file.close() |
@@ -858,22 +807,6 @@ |
for line in previous_lines.split('\n') + expected_new_json: |
self.assertTrue(line in actual_cache_lines) |
- def test_ChunkList(self): |
- """Tests the list-chunking function.""" |
- # Access to a protected member. |
- # pylint: disable=W0212 |
- self.assertEqual( |
- [[1, 2, 3], [4, 5, 6], [7]], |
- results_dashboard._ChunkList([1, 2, 3, 4, 5, 6, 7], 3)) |
- self.assertEqual( |
- [[1, 2, 3, 4, 5, 6, 7]], |
- results_dashboard._ChunkList([1, 2, 3, 4, 5, 6, 7], 7)) |
- self.assertEqual( |
- [], results_dashboard._ChunkList([], 3)) |
- self.assertEqual( |
- [[1, 2, 3], [4, 5, 6]], |
- results_dashboard._ChunkList([1, 2, 3, 4, 5, 6], 3)) |
- |
if __name__ == '__main__': |
unittest.main() |