Home | History | Annotate | Download | only in measurements
      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 
      5 from measurements import thread_times
      6 from measurements import smoothness_unittest
      7 from metrics import timeline
      8 from telemetry import test
      9 from telemetry.core import wpr_modes
     10 from telemetry.page import page_measurement_unittest_base
     11 
     12 from telemetry.unittest import options_for_unittests
     13 
     14 
     15 
     16 class ThreadTimesUnitTest(
     17       page_measurement_unittest_base.PageMeasurementUnitTestBase):
     18   def setUp(self):
     19     self._options = options_for_unittests.GetCopy()
     20     self._options.browser_options.wpr_mode = wpr_modes.WPR_OFF
     21 
     22   @test.Disabled('android')
     23   def testBasic(self):
     24     ps = self.CreatePageSetFromFileInUnittestDataDir('scrollable_page.html')
     25     measurement = thread_times.ThreadTimes()
     26     timeline_options = self._options
     27     results = self.RunMeasurement(measurement, ps, options = timeline_options)
     28     self.assertEquals(0, len(results.failures))
     29 
     30     for category in timeline.TimelineThreadCategories.values():
     31       cpu_time_name = timeline.ThreadCpuTimeResultName(category)
     32       cpu_time = results.FindAllPageSpecificValuesNamed(cpu_time_name)
     33       self.assertEquals(len(cpu_time), 1)
     34 
     35   def testBasicForPageWithNoGesture(self):
     36     ps = self.CreateEmptyPageSet()
     37     ps.AddPage(smoothness_unittest.AnimatedPage(ps))
     38 
     39     measurement = thread_times.ThreadTimes()
     40     timeline_options = self._options
     41     results = self.RunMeasurement(measurement, ps, options = timeline_options)
     42     self.assertEquals(0, len(results.failures))
     43 
     44     for category in timeline.TimelineThreadCategories.values():
     45       cpu_time_name = timeline.ThreadCpuTimeResultName(category)
     46       cpu_time = results.FindAllPageSpecificValuesNamed(cpu_time_name)
     47       self.assertEquals(len(cpu_time), 1)
     48 
     49 
     50   def testCleanUpTrace(self):
     51     self.TestTracingCleanedUp(thread_times.ThreadTimes, self._options)
     52