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