Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(21)

Side by Side Diff: tools/telemetry/telemetry/unittest/run_tests_unittest.py

Issue 708483002: Revert of Reland "Switch telemetry over to use typ to run the unit tests." (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 6
7 from telemetry import decorators
7 from telemetry.core import util 8 from telemetry.core import util
8 from telemetry.unittest import run_tests 9 from telemetry.unittest import run_tests
9 10
10 11
11 class MockArgs(object):
12 def __init__(self):
13 self.positional_args = []
14 self.exact_test_filter = True
15 self.run_disabled_tests = False
16
17
18 class MockPossibleBrowser(object): 12 class MockPossibleBrowser(object):
19 def __init__(self, browser_type, os_name, os_version_name, 13 def __init__(self, browser_type, os_name, os_version_name,
20 supports_tab_control): 14 supports_tab_control):
21 self.browser_type = browser_type 15 self.browser_type = browser_type
22 self.platform = MockPlatform(os_name, os_version_name) 16 self.platform = MockPlatform(os_name, os_version_name)
23 self.supports_tab_control = supports_tab_control 17 self.supports_tab_control = supports_tab_control
24 18
25 19
26 class MockPlatform(object): 20 class MockPlatform(object):
27 def __init__(self, os_name, os_version_name): 21 def __init__(self, os_name, os_version_name):
28 self.os_name = os_name 22 self.os_name = os_name
29 self.os_version_name = os_version_name 23 self.os_version_name = os_version_name
30 24
31 def GetOSName(self): 25 def GetOSName(self):
32 return self.os_name 26 return self.os_name
33 27
34 def GetOSVersionName(self): 28 def GetOSVersionName(self):
35 return self.os_version_name 29 return self.os_version_name
36 30
37 31
38 class RunTestsUnitTest(unittest.TestCase): 32 class RunTestsUnitTest(unittest.TestCase):
39 33
34 def setUp(self):
35 self.suite = unittest.TestSuite()
36 self.suite.addTests(run_tests.Discover(
37 util.GetTelemetryDir(), util.GetTelemetryDir(), 'disabled_cases.py'))
38
40 def _GetEnabledTests(self, browser_type, os_name, os_version_name, 39 def _GetEnabledTests(self, browser_type, os_name, os_version_name,
41 supports_tab_control): 40 supports_tab_control):
41 # pylint: disable=W0212
42 def MockPredicate(test):
43 method = getattr(test, test._testMethodName)
44 return decorators.IsEnabled(method, MockPossibleBrowser(
45 browser_type, os_name, os_version_name, supports_tab_control))
42 46
43 runner = run_tests.typ.Runner() 47 enabled_tests = set()
44 host = runner.host 48 for i in run_tests.FilterSuite(self.suite, MockPredicate)._tests:
45 runner.top_level_dir = util.GetTelemetryDir() 49 for j in i:
46 runner.args.tests = [host.join(util.GetTelemetryDir(), 50 for k in j:
47 'telemetry', 'unittest', 'disabled_cases.py')] 51 enabled_tests.add(k._testMethodName)
48 possible_browser = MockPossibleBrowser( 52 return enabled_tests
49 browser_type, os_name, os_version_name, supports_tab_control)
50 runner.classifier = run_tests.GetClassifier(MockArgs(), possible_browser)
51 _, test_set = runner.find_tests(runner.args)
52 return set(test.name.split('.')[-1] for test in test_set.parallel_tests)
53 53
54 def testSystemMacMavericks(self): 54 def testSystemMacMavericks(self):
55 self.assertEquals( 55 self.assertEquals(
56 set(['testAllEnabled', 56 set(['testAllEnabled',
57 'testMacOnly', 57 'testMacOnly',
58 'testMavericksOnly', 58 'testMavericksOnly',
59 'testNoChromeOS', 59 'testNoChromeOS',
60 'testNoWinLinux', 60 'testNoWinLinux',
61 'testSystemOnly', 61 'testSystemOnly',
62 'testHasTabs']), 62 'testHasTabs']),
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
97 97
98 def testDoesntHaveTabs(self): 98 def testDoesntHaveTabs(self):
99 self.assertEquals( 99 self.assertEquals(
100 set(['testAllEnabled', 100 set(['testAllEnabled',
101 'testNoChromeOS', 101 'testNoChromeOS',
102 'testNoMac', 102 'testNoMac',
103 'testNoMavericks', 103 'testNoMavericks',
104 'testNoSystem', 104 'testNoSystem',
105 'testWinOrLinuxOnly']), 105 'testWinOrLinuxOnly']),
106 self._GetEnabledTests('canary', 'win', 'win7', False)) 106 self._GetEnabledTests('canary', 'win', 'win7', False))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698