OLD | NEW |
| (Empty) |
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 | |
3 # found in the LICENSE file. | |
4 | |
5 import inspect | |
6 | |
7 EXPECT_TESTS_COVER_FUNCTION = 'EXPECT_TESTS_COVER_FUNCTION' | |
8 | |
9 def covers(coverage_path_function): | |
10 """Allows annotation of a Test generator function with a function that will | |
11 return a list of coverage patterns which should be enabled during the use of | |
12 the Test generator function. | |
13 """ | |
14 def _decorator(func): | |
15 setattr(func, EXPECT_TESTS_COVER_FUNCTION, coverage_path_function) | |
16 return func | |
17 return _decorator | |
18 | |
19 | |
20 def get_cover_list(test_gen_function): | |
21 """Given a Test generator, return the list of coverage globs that should | |
22 be included while executing the Test generator.""" | |
23 return getattr(test_gen_function, EXPECT_TESTS_COVER_FUNCTION, | |
24 lambda: [inspect.getabsfile(test_gen_function)])() | |
OLD | NEW |