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
3 # found in the LICENSE file.
4 from measurements import rasterize_and_record_micro
5 from telemetry import test
6 from telemetry.core import wpr_modes
7 from telemetry.page import page_measurement_unittest_base
8 from telemetry.unittest import options_for_unittests
11 class RasterizeAndRecordMicroUnitTest(
12 page_measurement_unittest_base.PageMeasurementUnitTestBase):
13 """Smoke test for rasterize_and_record_micro measurement
15 Runs rasterize_and_record_micro measurement on a simple page and verifies
16 that all metrics were added to the results. The test is purely functional,
17 i.e. it only checks if the metrics are present and non-zero.
21 self._options = options_for_unittests.GetCopy()
22 self._options.browser_options.wpr_mode = wpr_modes.WPR_OFF
23 self._options.rasterize_repeat = 1
24 self._options.record_repeat = 1
25 self._options.start_wait_time = 0.0
28 def testRasterizeAndRecordMicro(self):
29 ps = self.CreatePageSetFromFileInUnittestDataDir('blank.html')
30 measurement = rasterize_and_record_micro.RasterizeAndRecordMicro()
31 results = self.RunMeasurement(measurement, ps, options=self._options)
32 self.assertEquals(0, len(results.failures))
34 rasterize_time = results.FindAllPageSpecificValuesNamed('rasterize_time')
35 self.assertEquals(len(rasterize_time), 1)
36 self.assertGreater(rasterize_time[0].GetRepresentativeNumber(), 0)
38 record_time = results.FindAllPageSpecificValuesNamed('record_time')
39 self.assertEquals(len(record_time), 1)
40 self.assertGreater(record_time[0].GetRepresentativeNumber(), 0)
42 rasterized_pixels = results.FindAllPageSpecificValuesNamed(
44 self.assertEquals(len(rasterized_pixels), 1)
45 self.assertGreater(rasterized_pixels[0].GetRepresentativeNumber(), 0)
47 recorded_pixels = results.FindAllPageSpecificValuesNamed('pixels_recorded')
48 self.assertEquals(len(recorded_pixels), 1)
49 self.assertGreater(recorded_pixels[0].GetRepresentativeNumber(), 0)