Kevin Cheng | 8b2c94c | 2017-12-18 14:43:26 -0800 | [diff] [blame] | 1 | # Copyright 2018, The Android Open Source Project |
| 2 | # |
| 3 | # Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 | # you may not use this file except in compliance with the License. |
| 5 | # You may obtain a copy of the License at |
| 6 | # |
| 7 | # http://www.apache.org/licenses/LICENSE-2.0 |
| 8 | # |
| 9 | # Unless required by applicable law or agreed to in writing, software |
| 10 | # distributed under the License is distributed on an "AS IS" BASIS, |
| 11 | # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 | # See the License for the specific language governing permissions and |
| 13 | # limitations under the License. |
| 14 | |
| 15 | """ |
| 16 | Unittest constants. |
| 17 | |
| 18 | Unittest constants get their own file since they're used purely for testing and |
| 19 | should not be combined with constants_defaults as part of normal atest |
| 20 | operation. These constants are used commonly as test data so when updating a |
| 21 | constant, do so with care and run all unittests to make sure nothing breaks. |
| 22 | """ |
| 23 | |
| 24 | import os |
| 25 | |
| 26 | import constants |
| 27 | from test_finders import test_info |
| 28 | from test_runners import atest_tf_test_runner as atf_tr |
| 29 | |
| 30 | ROOT = '/' |
| 31 | MODULE_DIR = 'foo/bar/jank' |
| 32 | MODULE2_DIR = 'foo/bar/hello' |
| 33 | MODULE_NAME = 'CtsJankDeviceTestCases' |
| 34 | MODULE2_NAME = 'HelloWorldTests' |
| 35 | CLASS_NAME = 'CtsDeviceJankUi' |
| 36 | FULL_CLASS_NAME = 'android.jank.cts.ui.CtsDeviceJankUi' |
mikehoran | 6740a41 | 2018-02-20 15:04:16 -0800 | [diff] [blame] | 37 | PACKAGE = 'android.jank.cts.ui' |
Kevin Cheng | 8b2c94c | 2017-12-18 14:43:26 -0800 | [diff] [blame] | 38 | FIND_ONE = ROOT + 'foo/bar/jank/src/android/jank/cts/ui/CtsDeviceJankUi.java\n' |
| 39 | FIND_TWO = ROOT + 'other/dir/test.java\n' + FIND_ONE |
mikehoran | 6740a41 | 2018-02-20 15:04:16 -0800 | [diff] [blame] | 40 | FIND_PKG = ROOT + 'foo/bar/jank/src/android/jank/cts/ui\n' |
Kevin Cheng | 8b2c94c | 2017-12-18 14:43:26 -0800 | [diff] [blame] | 41 | INT_NAME = 'example/reboot' |
| 42 | GTF_INT_NAME = 'some/gtf_int_test' |
mikehoran | 8bf6d08 | 2018-02-26 16:22:06 -0800 | [diff] [blame] | 43 | TEST_DATA_DIR = os.path.join(os.path.dirname(__file__), 'unittest_data') |
Morris Lin | a2e85f2 | 2018-04-30 14:30:06 +0000 | [diff] [blame] | 44 | RELATIVE_TEST_DATA_DIR = 'relative_test_data_dir' |
Kevin Cheng | 8b2c94c | 2017-12-18 14:43:26 -0800 | [diff] [blame] | 45 | |
| 46 | INT_DIR = 'tf/contrib/res/config' |
| 47 | GTF_INT_DIR = 'gtf/core/res/config' |
mikehoran | 8bf6d08 | 2018-02-26 16:22:06 -0800 | [diff] [blame] | 48 | |
Kevin Cheng | 8b2c94c | 2017-12-18 14:43:26 -0800 | [diff] [blame] | 49 | CONFIG_FILE = os.path.join(MODULE_DIR, constants.MODULE_CONFIG) |
| 50 | CONFIG2_FILE = os.path.join(MODULE2_DIR, constants.MODULE_CONFIG) |
| 51 | JSON_FILE = 'module-info.json' |
| 52 | MODULE_INFO_TARGET = '/out/%s' % JSON_FILE |
| 53 | MODULE_BUILD_TARGETS = {'tradefed-core', MODULE_INFO_TARGET, |
| 54 | 'MODULES-IN-%s' % MODULE_DIR.replace('/', '-'), |
| 55 | 'module-specific-target'} |
| 56 | MODULE_DATA = {constants.TI_REL_CONFIG: CONFIG_FILE, |
| 57 | constants.TI_FILTER: frozenset()} |
| 58 | MODULE_INFO = test_info.TestInfo(MODULE_NAME, |
| 59 | atf_tr.AtestTradefedTestRunner.NAME, |
| 60 | MODULE_BUILD_TARGETS, |
| 61 | MODULE_DATA) |
| 62 | CLASS_FILTER = test_info.TestFilter(FULL_CLASS_NAME, frozenset()) |
| 63 | CLASS_DATA = {constants.TI_REL_CONFIG: CONFIG_FILE, |
| 64 | constants.TI_FILTER: frozenset([CLASS_FILTER])} |
mikehoran | 6740a41 | 2018-02-20 15:04:16 -0800 | [diff] [blame] | 65 | PACKAGE_FILTER = test_info.TestFilter(PACKAGE, frozenset()) |
| 66 | PACKAGE_DATA = {constants.TI_REL_CONFIG: CONFIG_FILE, |
| 67 | constants.TI_FILTER: frozenset([PACKAGE_FILTER])} |
mikehoran | 8bf6d08 | 2018-02-26 16:22:06 -0800 | [diff] [blame] | 68 | TEST_DATA_CONFIG = os.path.relpath(os.path.join(TEST_DATA_DIR, |
| 69 | constants.MODULE_CONFIG), ROOT) |
| 70 | PATH_DATA = { |
| 71 | constants.TI_REL_CONFIG: TEST_DATA_CONFIG, |
| 72 | constants.TI_FILTER: frozenset([PACKAGE_FILTER])} |
| 73 | EMPTY_PATH_DATA = { |
| 74 | constants.TI_REL_CONFIG: TEST_DATA_CONFIG, |
| 75 | constants.TI_FILTER: frozenset()} |
| 76 | |
Kevin Cheng | 8b2c94c | 2017-12-18 14:43:26 -0800 | [diff] [blame] | 77 | CLASS_BUILD_TARGETS = {'class-specific-target'} |
| 78 | CLASS_INFO = test_info.TestInfo(MODULE_NAME, |
| 79 | atf_tr.AtestTradefedTestRunner.NAME, |
| 80 | CLASS_BUILD_TARGETS, |
| 81 | CLASS_DATA) |
mikehoran | 6740a41 | 2018-02-20 15:04:16 -0800 | [diff] [blame] | 82 | PACKAGE_INFO = test_info.TestInfo(MODULE_NAME, |
| 83 | atf_tr.AtestTradefedTestRunner.NAME, |
| 84 | CLASS_BUILD_TARGETS, |
| 85 | PACKAGE_DATA) |
mikehoran | 8bf6d08 | 2018-02-26 16:22:06 -0800 | [diff] [blame] | 86 | PATH_INFO = test_info.TestInfo(MODULE_NAME, |
| 87 | atf_tr.AtestTradefedTestRunner.NAME, |
| 88 | MODULE_BUILD_TARGETS, |
| 89 | PATH_DATA) |
| 90 | EMPTY_PATH_INFO = test_info.TestInfo(MODULE_NAME, |
| 91 | atf_tr.AtestTradefedTestRunner.NAME, |
| 92 | MODULE_BUILD_TARGETS, |
| 93 | EMPTY_PATH_DATA) |
Kevin Cheng | 8b2c94c | 2017-12-18 14:43:26 -0800 | [diff] [blame] | 94 | MODULE_CLASS_COMBINED_BUILD_TARGETS = MODULE_BUILD_TARGETS | CLASS_BUILD_TARGETS |
| 95 | INT_CONFIG = os.path.join(INT_DIR, INT_NAME + '.xml') |
| 96 | GTF_INT_CONFIG = os.path.join(GTF_INT_DIR, GTF_INT_NAME + '.xml') |
| 97 | METHOD_NAME = 'method1' |
| 98 | METHOD_FILTER = test_info.TestFilter(FULL_CLASS_NAME, frozenset([METHOD_NAME])) |
| 99 | METHOD_INFO = test_info.TestInfo( |
| 100 | MODULE_NAME, |
| 101 | atf_tr.AtestTradefedTestRunner.NAME, |
| 102 | MODULE_BUILD_TARGETS, |
| 103 | data={constants.TI_FILTER: frozenset([METHOD_FILTER]), |
| 104 | constants.TI_REL_CONFIG: CONFIG_FILE}) |
| 105 | METHOD2_NAME = 'method2' |
| 106 | FLAT_METHOD_FILTER = test_info.TestFilter( |
| 107 | FULL_CLASS_NAME, frozenset([METHOD_NAME, METHOD2_NAME])) |
| 108 | INT_INFO = test_info.TestInfo(INT_NAME, |
| 109 | atf_tr.AtestTradefedTestRunner.NAME, |
| 110 | set(), |
| 111 | data={constants.TI_REL_CONFIG: INT_CONFIG, |
| 112 | constants.TI_FILTER: frozenset()}) |
| 113 | GTF_INT_INFO = test_info.TestInfo( |
| 114 | GTF_INT_NAME, |
| 115 | atf_tr.AtestTradefedTestRunner.NAME, |
| 116 | set(), |
| 117 | data={constants.TI_FILTER: frozenset(), |
| 118 | constants.TI_REL_CONFIG: GTF_INT_CONFIG}) |