Upstream version 5.34.104.0
[platform/framework/web/crosswalk.git] / src / tools / perf / measurements / skpicture_printer_unittest.py
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
3 # found in the LICENSE file.
4 import shutil
5 import tempfile
6
7 from measurements import skpicture_printer
8 from telemetry.page import page_measurement_unittest_base
9 from telemetry.unittest import options_for_unittests
10
11
12 class SkpicturePrinterUnitTest(
13       page_measurement_unittest_base.PageMeasurementUnitTestBase):
14   def setUp(self):
15     self._options = options_for_unittests.GetCopy()
16     self._options.skp_outdir = tempfile.mkdtemp('_skp_test')
17
18   def tearDown(self):
19     shutil.rmtree(self._options.skp_outdir)
20
21   def testSkpicturePrinter(self):
22     ps = self.CreatePageSetFromFileInUnittestDataDir('blank.html')
23     measurement = skpicture_printer.SkpicturePrinter()
24     results = self.RunMeasurement(measurement, ps, options=self._options)
25
26     # Picture printing is not supported on all platforms.
27     if results.failures:
28       assert 'not supported' in results.failures[0][1]
29       return
30
31     saved_picture_count = results.FindAllPageSpecificValuesNamed(
32         'saved_picture_count')
33     self.assertEquals(len(saved_picture_count), 1)
34     self.assertGreater(saved_picture_count[0].GetRepresentativeNumber(), 0)