Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / tools / perf / measurements / rasterize_and_record_micro_unittest.py
index f7934f6..871de8b 100644 (file)
@@ -1,15 +1,18 @@
 # Copyright 2013 The Chromium Authors. All rights reserved.
 # Use of this source code is governed by a BSD-style license that can be
 # found in the LICENSE file.
+
+import logging
+
 from measurements import rasterize_and_record_micro
-from telemetry import test
 from telemetry.core import wpr_modes
-from telemetry.page import page_measurement_unittest_base
+from telemetry.page import page_test
 from telemetry.unittest import options_for_unittests
+from telemetry.unittest import page_test_test_case
+from telemetry.unittest import test
 
 
-class RasterizeAndRecordMicroUnitTest(
-      page_measurement_unittest_base.PageMeasurementUnitTestBase):
+class RasterizeAndRecordMicroUnitTest(page_test_test_case.PageTestTestCase):
   """Smoke test for rasterize_and_record_micro measurement
 
      Runs rasterize_and_record_micro measurement on a simple page and verifies
@@ -23,12 +26,17 @@ class RasterizeAndRecordMicroUnitTest(
     self._options.rasterize_repeat = 1
     self._options.record_repeat = 1
     self._options.start_wait_time = 0.0
+    self._options.report_detailed_results = True
 
-  @test.Disabled
+  @test.Disabled('win')
   def testRasterizeAndRecordMicro(self):
     ps = self.CreatePageSetFromFileInUnittestDataDir('blank.html')
     measurement = rasterize_and_record_micro.RasterizeAndRecordMicro()
-    results = self.RunMeasurement(measurement, ps, options=self._options)
+    try:
+      results = self.RunMeasurement(measurement, ps, options=self._options)
+    except page_test.TestNotSupportedOnPlatformFailure as failure:
+      logging.warning(str(failure))
+      return
     self.assertEquals(0, len(results.failures))
 
     rasterize_time = results.FindAllPageSpecificValuesNamed('rasterize_time')
@@ -47,3 +55,41 @@ class RasterizeAndRecordMicroUnitTest(
     recorded_pixels = results.FindAllPageSpecificValuesNamed('pixels_recorded')
     self.assertEquals(len(recorded_pixels), 1)
     self.assertGreater(recorded_pixels[0].GetRepresentativeNumber(), 0)
+
+    pixels_rasterized_with_non_solid_color = \
+        results.FindAllPageSpecificValuesNamed(
+            'pixels_rasterized_with_non_solid_color')
+    self.assertEquals(len(pixels_rasterized_with_non_solid_color), 1)
+    self.assertGreater(
+        pixels_rasterized_with_non_solid_color[0].GetRepresentativeNumber(), 0)
+
+    pixels_rasterized_as_opaque = \
+        results.FindAllPageSpecificValuesNamed('pixels_rasterized_as_opaque')
+    self.assertEquals(len(pixels_rasterized_as_opaque), 1)
+    self.assertGreater(
+        pixels_rasterized_as_opaque[0].GetRepresentativeNumber(), 0)
+
+    total_layers = results.FindAllPageSpecificValuesNamed('total_layers')
+    self.assertEquals(len(total_layers), 1)
+    self.assertGreater(total_layers[0].GetRepresentativeNumber(), 0)
+
+    total_picture_layers = \
+        results.FindAllPageSpecificValuesNamed('total_picture_layers')
+    self.assertEquals(len(total_picture_layers), 1)
+    self.assertGreater(total_picture_layers[0].GetRepresentativeNumber(), 0)
+
+    total_picture_layers_with_no_content = \
+        results.FindAllPageSpecificValuesNamed(
+            'total_picture_layers_with_no_content')
+    self.assertEquals(len(total_picture_layers_with_no_content), 1)
+    self.assertGreater(
+        total_picture_layers_with_no_content[0].GetRepresentativeNumber(), 0)
+
+    total_picture_layers_off_screen = \
+        results.FindAllPageSpecificValuesNamed(
+            'total_picture_layers_off_screen')
+    self.assertEquals(len(total_picture_layers_off_screen), 1)
+    self.assertEqual(
+        total_picture_layers_off_screen[0].GetRepresentativeNumber(), 0)
+
+