OLD | NEW |
1 # Copyright 2013 The Chromium Authors. All rights reserved. | 1 # Copyright 2013 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 """Setup for linker tests.""" | 5 """Setup for linker tests.""" |
6 | 6 |
7 import os | 7 import os |
8 import sys | 8 import sys |
9 | 9 |
10 from pylib import constants | 10 from pylib import constants |
11 from pylib.linker import test_case | 11 from pylib.linker import test_case |
12 from pylib.linker import test_runner | 12 from pylib.linker import test_runner |
13 | 13 |
14 sys.path.insert(0, | 14 sys.path.insert(0, |
15 os.path.join(constants.DIR_SOURCE_ROOT, 'build', 'util', 'lib', | 15 os.path.join(constants.DIR_SOURCE_ROOT, 'build', 'util', 'lib', |
16 'common')) | 16 'common')) |
17 import unittest_util # pylint: disable=F0401 | 17 import unittest_util # pylint: disable=F0401 |
18 | 18 |
19 def Setup(options, _devices): | 19 def Setup(options, _devices): |
20 """Creates a list of test cases and a runner factory. | 20 """Creates a list of test cases and a runner factory. |
21 | 21 |
22 Returns: | 22 Returns: |
23 A tuple of (TestRunnerFactory, tests). | 23 A tuple of (TestRunnerFactory, tests). |
24 """ | 24 """ |
25 test_cases = [ | 25 test_cases = [ |
26 test_case.LinkerLibraryAddressTest, | 26 test_case.LinkerLibraryAddressTest, |
27 test_case.LinkerSharedRelroTest, | 27 test_case.LinkerSharedRelroTest, |
28 test_case.LinkerRandomizationTest ] | 28 test_case.LinkerRandomizationTest] |
29 | 29 |
30 low_memory_modes = [False, True] | 30 low_memory_modes = [False, True] |
31 all_tests = [t(is_low_memory=m) for t in test_cases for m in low_memory_modes] | 31 all_tests = [t(is_low_memory=m) for t in test_cases for m in low_memory_modes] |
32 | 32 |
33 if options.test_filter: | 33 if options.test_filter: |
34 all_test_names = [ test.qualified_name for test in all_tests ] | 34 all_test_names = [test.qualified_name for test in all_tests] |
35 filtered_test_names = unittest_util.FilterTestNames(all_test_names, | 35 filtered_test_names = unittest_util.FilterTestNames(all_test_names, |
36 options.test_filter) | 36 options.test_filter) |
37 all_tests = [t for t in all_tests \ | 37 all_tests = [t for t in all_tests \ |
38 if t.qualified_name in filtered_test_names] | 38 if t.qualified_name in filtered_test_names] |
39 | 39 |
40 def TestRunnerFactory(device, _shard_index): | 40 def TestRunnerFactory(device, _shard_index): |
41 return test_runner.LinkerTestRunner( | 41 return test_runner.LinkerTestRunner( |
42 device, options.tool, options.cleanup_test_files) | 42 device, options.tool, options.cleanup_test_files) |
43 | 43 |
44 return (TestRunnerFactory, all_tests) | 44 return (TestRunnerFactory, all_tests) |
OLD | NEW |