OLD | NEW |
1 # Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import unittest | 5 import unittest |
6 import StringIO | 6 import StringIO |
7 import sys | 7 import sys |
8 | 8 |
9 from telemetry import benchmark | 9 from telemetry import benchmark |
10 from telemetry import user_story | 10 from telemetry import user_story |
11 from telemetry.core import exceptions | 11 from telemetry.core import exceptions |
12 from telemetry.page import page as page_module | 12 from telemetry.page import page as page_module |
13 from telemetry.page import page_test | 13 from telemetry.page import page_test |
14 from telemetry.page import test_expectations | 14 from telemetry.page import test_expectations |
15 from telemetry.results import results_options | 15 from telemetry.results import results_options |
16 from telemetry.unittest_util import options_for_unittests | 16 from telemetry.unittest_util import options_for_unittests |
17 from telemetry.unittest_util import system_stub | 17 from telemetry.unittest_util import system_stub |
18 from telemetry.user_story import shared_user_story_state | 18 from telemetry.user_story import shared_user_story_state |
19 from telemetry.user_story import user_story_runner | 19 from telemetry.user_story import user_story_runner |
20 from telemetry.user_story import user_story_set | 20 from telemetry.user_story import user_story_set |
21 from telemetry.util import cloud_storage | 21 from telemetry.util import cloud_storage |
22 from telemetry.util import exception_formatter as exception_formatter_module | 22 from telemetry.util import exception_formatter as exception_formatter_module |
| 23 from telemetry.value import improvement_direction |
23 from telemetry.value import scalar | 24 from telemetry.value import scalar |
24 from telemetry.value import string | 25 from telemetry.value import string |
25 from telemetry.web_perf import timeline_based_measurement | 26 from telemetry.web_perf import timeline_based_measurement |
26 | 27 |
27 # This linter complains if we define classes nested inside functions. | 28 # This linter complains if we define classes nested inside functions. |
28 # pylint: disable=bad-super-call | 29 # pylint: disable=bad-super-call |
29 | 30 |
30 | 31 |
31 class FakePlatform(object): | 32 class FakePlatform(object): |
32 def CanMonitorThermalThrottling(self): | 33 def CanMonitorThermalThrottling(self): |
(...skipping 367 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
400 def testPagesetRepeat(self): | 401 def testPagesetRepeat(self): |
401 us = user_story_set.UserStorySet() | 402 us = user_story_set.UserStorySet() |
402 us.AddUserStory(DummyLocalUserStory(TestSharedPageState, name='blank')) | 403 us.AddUserStory(DummyLocalUserStory(TestSharedPageState, name='blank')) |
403 us.AddUserStory(DummyLocalUserStory(TestSharedPageState, name='green')) | 404 us.AddUserStory(DummyLocalUserStory(TestSharedPageState, name='green')) |
404 | 405 |
405 class Measurement(page_test.PageTest): | 406 class Measurement(page_test.PageTest): |
406 i = 0 | 407 i = 0 |
407 def RunPage(self, page, _, results): | 408 def RunPage(self, page, _, results): |
408 self.i += 1 | 409 self.i += 1 |
409 results.AddValue(scalar.ScalarValue( | 410 results.AddValue(scalar.ScalarValue( |
410 page, 'metric', 'unit', self.i)) | 411 page, 'metric', 'unit', self.i, |
| 412 improvement_direction=improvement_direction.UP)) |
411 | 413 |
412 def ValidateAndMeasurePage(self, page, tab, results): | 414 def ValidateAndMeasurePage(self, page, tab, results): |
413 pass | 415 pass |
414 | 416 |
415 self.options.page_repeat = 1 | 417 self.options.page_repeat = 1 |
416 self.options.pageset_repeat = 2 | 418 self.options.pageset_repeat = 2 |
417 self.options.output_formats = ['buildbot'] | 419 self.options.output_formats = ['buildbot'] |
418 output = StringIO.StringIO() | 420 output = StringIO.StringIO() |
419 real_stdout = sys.stdout | 421 real_stdout = sys.stdout |
420 sys.stdout = output | 422 sys.stdout = output |
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
548 num_failing_user_stories=5, runner_max_failures=3, | 550 num_failing_user_stories=5, runner_max_failures=3, |
549 options_max_failures=None, expected_num_failures=4) | 551 options_max_failures=None, expected_num_failures=4) |
550 | 552 |
551 def testMaxFailuresOption(self): | 553 def testMaxFailuresOption(self): |
552 # Runs up to max_failures+1 failing tests before stopping, since | 554 # Runs up to max_failures+1 failing tests before stopping, since |
553 # every tests after max_failures failures have been encountered | 555 # every tests after max_failures failures have been encountered |
554 # may all be passing. | 556 # may all be passing. |
555 self._testMaxFailuresOptionIsRespectedAndOverridable( | 557 self._testMaxFailuresOptionIsRespectedAndOverridable( |
556 num_failing_user_stories=5, runner_max_failures=3, | 558 num_failing_user_stories=5, runner_max_failures=3, |
557 options_max_failures=1, expected_num_failures=2) | 559 options_max_failures=1, expected_num_failures=2) |
OLD | NEW |