| 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 argparse | 5 import argparse |
| 6 import multiprocessing | 6 import multiprocessing |
| 7 import pkgutil | 7 import pkgutil |
| 8 import sys | 8 import sys |
| 9 | 9 |
| 10 from expect_tests import handle_list, handle_debug, handle_train, handle_test | 10 from expect_tests import handle_list, handle_debug, handle_train, handle_test |
| (...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 127 del opts.test_list | 127 del opts.test_list |
| 128 del opts.mode | 128 del opts.mode |
| 129 | 129 |
| 130 return opts | 130 return opts |
| 131 | 131 |
| 132 | 132 |
| 133 def find_all_modules(): | 133 def find_all_modules(): |
| 134 sys.path.insert(0, '.') | 134 sys.path.insert(0, '.') |
| 135 | 135 |
| 136 ret = [] | 136 ret = [] |
| 137 blacklist = set() |
| 137 for importer, modname, ispkg in pkgutil.walk_packages(path=['.']): | 138 for importer, modname, ispkg in pkgutil.walk_packages(path=['.']): |
| 138 if not ispkg and modname.endswith('_test'): | 139 if ispkg and getattr(importer.find_module(modname).load_module(modname), |
| 140 '_expect_tests_stop_walk', False): |
| 141 blacklist.add(modname) |
| 142 continue |
| 143 if modname.endswith('_test'): |
| 144 if any(modname.startswith(pkg) for pkg in blacklist): |
| 145 continue |
| 139 if modname in sys.modules: | 146 if modname in sys.modules: |
| 140 ret.append(sys.modules[modname]) | 147 ret.append(sys.modules[modname]) |
| 141 else: | 148 else: |
| 142 ret.append(importer.find_module(modname).load_module(modname)) | 149 ret.append(importer.find_module(modname).load_module(modname)) |
| 143 | 150 |
| 144 return ret | 151 return ret |
| 145 | 152 |
| 146 | 153 |
| 147 def get_test_gens(test_modules): | 154 def get_test_gens(test_modules): |
| 148 if test_modules is ALL_MODULES: | 155 if test_modules is ALL_MODULES: |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 202 cover_ctx.cleanup() | 209 cover_ctx.cleanup() |
| 203 if (not killed and | 210 if (not killed and |
| 204 not skip_loop and ( | 211 not skip_loop and ( |
| 205 opts.force_coverage or not opts.test_glob)): | 212 opts.force_coverage or not opts.test_glob)): |
| 206 if not cover_ctx.report(opts.verbose): | 213 if not cover_ctx.report(opts.verbose): |
| 207 sys.exit(2) | 214 sys.exit(2) |
| 208 | 215 |
| 209 sys.exit(error or killed) | 216 sys.exit(error or killed) |
| 210 except KeyboardInterrupt: | 217 except KeyboardInterrupt: |
| 211 pass | 218 pass |
| OLD | NEW |