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

Side by Side Diff: scripts/slave/unittests/expect_tests/util.py

Issue 354913003: Add module discovery and autoloading to expect_tests. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/tools/build
Patch Set: Fix formatting + comment Created 6 years, 5 months 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 | Annotate | Revision Log
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 inspect 5 import inspect
6 6
7 EXPECT_TESTS_COVER_FUNCTION = 'EXPECT_TESTS_COVER_FUNCTION' 7 EXPECT_TESTS_COVER_FUNCTION = 'EXPECT_TESTS_COVER_FUNCTION'
Vadim Sh. 2014/06/30 17:15:46 constant for this seems to be an overkill :) but a
8 EXPECT_TESTS_GENERATOR = 'EXPECT_TESTS_GENERATOR'
8 9
9 def covers(coverage_path_function): 10 def covers(coverage_path_function):
10 """Allows annotation of a Test generator function with a function that will 11 """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 return a list of coverage patterns which should be enabled during the use of
12 the Test generator function. 13 the Test generator function.
13 """ 14 """
14 def _decorator(func): 15 def _decorator(func):
15 setattr(func, EXPECT_TESTS_COVER_FUNCTION, coverage_path_function) 16 setattr(func, EXPECT_TESTS_COVER_FUNCTION, coverage_path_function)
16 return func 17 return func
17 return _decorator 18 return _decorator
18 19
19 20
20 def get_cover_list(test_gen_function): 21 def get_cover_list(test_gen_function):
21 """Given a Test generator, return the list of coverage globs that should 22 """Given a Test generator, return the list of coverage globs that should
22 be included while executing the Test generator.""" 23 be included while executing the Test generator."""
23 if hasattr(test_gen_function, EXPECT_TESTS_COVER_FUNCTION): 24 return getattr(test_gen_function, EXPECT_TESTS_COVER_FUNCTION,
24 # decorated with expect_tests.covers 25 lambda: [inspect.getabsfile(test_gen_function)])()
25 return test_gen_function._covers() # pylint: disable=W0212 26
26 else: 27
27 return [inspect.getabsfile(test_gen_function)] 28 def test_generator(function):
29 """Marks function as an expect_tests Test generator"""
30 setattr(function, EXPECT_TESTS_GENERATOR, True)
31 return function
32
33
34 def is_test_generator(function):
35 return getattr(function, EXPECT_TESTS_GENERATOR, False)
OLDNEW
« no previous file with comments | « scripts/slave/unittests/expect_tests/unittest_helper.py ('k') | scripts/slave/unittests/recipe_simulation_test.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698