Index: tools/telemetry/telemetry/results/page_test_results_unittest.py |
diff --git a/tools/telemetry/telemetry/results/page_test_results_unittest.py b/tools/telemetry/telemetry/results/page_test_results_unittest.py |
index 7be382b3cf6d1265273ed04d79f8aa574ed91f19..5e68b9a7f9318574875e16fb89823698e26d99c8 100644 |
--- a/tools/telemetry/telemetry/results/page_test_results_unittest.py |
+++ b/tools/telemetry/telemetry/results/page_test_results_unittest.py |
@@ -9,13 +9,9 @@ from telemetry.results import base_test_results_unittest |
from telemetry.results import page_test_results |
from telemetry.value import failure |
from telemetry.value import skip |
+from telemetry.value import histogram |
+from telemetry.value import scalar |
-class NonPrintingPageTestResults(page_test_results.PageTestResults): |
- def __init__(self): |
- super(NonPrintingPageTestResults, self).__init__() |
- |
- def _PrintPerfResult(self, *args): |
- pass |
class PageTestResultsTest(base_test_results_unittest.BaseTestResultsUnittest): |
def setUp(self): |
@@ -29,7 +25,7 @@ class PageTestResultsTest(base_test_results_unittest.BaseTestResultsUnittest): |
return self.page_set.pages |
def testFailures(self): |
- results = NonPrintingPageTestResults() |
+ results = page_test_results.PageTestResults() |
results.WillRunPage(self.pages[0]) |
results.AddValue( |
failure.FailureValue(self.pages[0], self.CreateException())) |
@@ -46,7 +42,7 @@ class PageTestResultsTest(base_test_results_unittest.BaseTestResultsUnittest): |
self.assertTrue(results.all_page_runs[1].ok) |
def testSkips(self): |
- results = NonPrintingPageTestResults() |
+ results = page_test_results.PageTestResults() |
results.WillRunPage(self.pages[0]) |
results.AddValue(skip.SkipValue(self.pages[0], 'testing reason')) |
results.DidRunPage(self.pages[0]) |
@@ -62,3 +58,127 @@ class PageTestResultsTest(base_test_results_unittest.BaseTestResultsUnittest): |
self.assertEqual(2, len(results.all_page_runs)) |
self.assertTrue(results.all_page_runs[0].skipped) |
self.assertTrue(results.all_page_runs[1].ok) |
+ |
+ def test_basic(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ results.AddValue(scalar.ScalarValue(self.pages[0], 'a', 'seconds', 3)) |
+ results.DidRunPage(self.pages[0]) |
+ |
+ results.WillRunPage(self.pages[1]) |
+ results.AddValue(scalar.ScalarValue(self.pages[1], 'a', 'seconds', 3)) |
+ results.DidRunPage(self.pages[1]) |
+ |
+ results.PrintSummary() |
+ |
+ values = results.FindPageSpecificValuesForPage(self.pages[0], 'a') |
+ self.assertEquals(1, len(values)) |
+ v = values[0] |
+ self.assertEquals(v.name, 'a') |
+ self.assertEquals(v.page, self.pages[0]) |
+ |
+ values = results.FindAllPageSpecificValuesNamed('a') |
+ assert len(values) == 2 |
+ |
+ def test_url_is_invalid_value(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ self.assertRaises( |
+ AssertionError, |
+ lambda: results.AddValue(scalar.ScalarValue( |
+ self.pages[0], 'url', 'string', 'foo'))) |
+ |
+ def test_add_summary_value_with_page_specified(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ self.assertRaises( |
+ AssertionError, |
+ lambda: results.AddSummaryValue(scalar.ScalarValue(self.pages[0], |
+ 'a', 'units', 3))) |
+ |
+ def test_unit_change(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ results.AddValue(scalar.ScalarValue(self.pages[0], 'a', 'seconds', 3)) |
+ results.DidRunPage(self.pages[0]) |
+ |
+ results.WillRunPage(self.pages[1]) |
+ self.assertRaises( |
+ AssertionError, |
+ lambda: results.AddValue(scalar.ScalarValue( |
+ self.pages[1], 'a', 'foobgrobbers', 3))) |
+ |
+ def test_type_change(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ results.AddValue(scalar.ScalarValue(self.pages[0], 'a', 'seconds', 3)) |
+ results.DidRunPage(self.pages[0]) |
+ |
+ results.WillRunPage(self.pages[1]) |
+ self.assertRaises( |
+ AssertionError, |
+ lambda: results.AddValue(histogram.HistogramValue( |
+ self.pages[1], 'a', 'seconds', |
+ raw_value_json='{"buckets": [{"low": 1, "high": 2, "count": 1}]}'))) |
+ |
+ def test_get_pages_that_succeeded_all_pages_fail(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ results.AddValue(scalar.ScalarValue(self.pages[0], 'a', 'seconds', 3)) |
+ results.AddValue(failure.FailureValue.FromMessage(self.pages[0], 'message')) |
+ results.DidRunPage(self.pages[0]) |
+ |
+ results.WillRunPage(self.pages[1]) |
+ results.AddValue(scalar.ScalarValue(self.pages[1], 'a', 'seconds', 7)) |
+ results.AddValue(failure.FailureValue.FromMessage(self.pages[1], 'message')) |
+ results.DidRunPage(self.pages[1]) |
+ |
+ results.PrintSummary() |
+ self.assertEquals(0, len(results.pages_that_succeeded)) |
+ |
+ def test_get_successful_page_values_merged_no_failures(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ results.AddValue(scalar.ScalarValue(self.pages[0], 'a', 'seconds', 3)) |
+ self.assertEquals(1, len(results.all_page_specific_values)) |
+ results.DidRunPage(self.pages[0]) |
+ |
+ def test_get_all_values_for_successful_pages(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ value1 = scalar.ScalarValue(self.pages[0], 'a', 'seconds', 3) |
+ results.AddValue(value1) |
+ results.DidRunPage(self.pages[0]) |
+ |
+ results.WillRunPage(self.pages[1]) |
+ value2 = scalar.ScalarValue(self.pages[1], 'a', 'seconds', 3) |
+ results.AddValue(value2) |
+ results.DidRunPage(self.pages[1]) |
+ |
+ results.WillRunPage(self.pages[2]) |
+ value3 = scalar.ScalarValue(self.pages[2], 'a', 'seconds', 3) |
+ results.AddValue(value3) |
+ results.DidRunPage(self.pages[2]) |
+ |
+ self.assertEquals( |
+ [value1, value2, value3], results.all_page_specific_values) |
+ |
+ def test_get_all_values_for_successful_pages_one_page_fails(self): |
+ results = page_test_results.PageTestResults() |
+ results.WillRunPage(self.pages[0]) |
+ value1 = scalar.ScalarValue(self.pages[0], 'a', 'seconds', 3) |
+ results.AddValue(value1) |
+ results.DidRunPage(self.pages[0]) |
+ |
+ results.WillRunPage(self.pages[1]) |
+ value2 = failure.FailureValue.FromMessage(self.pages[1], 'Failure') |
+ results.AddValue(value2) |
+ results.DidRunPage(self.pages[1]) |
+ |
+ results.WillRunPage(self.pages[2]) |
+ value3 = scalar.ScalarValue(self.pages[2], 'a', 'seconds', 3) |
+ results.AddValue(value3) |
+ results.DidRunPage(self.pages[2]) |
+ |
+ self.assertEquals( |
+ [value1, value2, value3], results.all_page_specific_values) |