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