1 # pylint:disable=I0011,W0401,W0614,C0103,E0602 2 ############################################################################ 3 # Copyright 2017 Intel Corporation 4 # 5 # Licensed under the Apache License, Version 2.0 (the "License"); 6 # you may not use this file except in compliance with the License. 7 # You may obtain a copy of the License at 8 # 9 # http://www.apache.org/licenses/LICENSE-2.0 10 # 11 # Unless required by applicable law or agreed to in writing, software 12 # distributed under the License is distributed on an "AS IS" BASIS, 13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 # See the License for the specific language governing permissions and 15 # limitations under the License. 16 ############################################################################ 17 """Build configuration for unit test of minimal library. 18 """ 19 Import('*') 20 env.PartName('utest') 21 22 env.DependsOn([Component(env.subst('${PART_PARENT_NAME}'), 23 requires=REQ.EXISTS|REQ.DEFAULT), 24 Component('gtest'), 25 Component('common-testhelper'), 26 Component('verifier')]) 27 28 utest_files = Pattern(src_dir='.', 29 includes=['*-test.cc', 30 '*-testhelper.cc'], 31 recursive=True).files() 32 33 env.Append(CPPPATH='#') 34 35 env['UNIT_TEST_TARGET_NAME'] = "${PART_PARENT_NAME}-${UNIT_TEST_TARGET}" 36 37 shlib = [] 38 39 if 'shared' in env['MODE']: 40 if env['TARGET_OS'] == 'win32': 41 dependent_shlib = env.subst("${{DEPENDS.{0}.SDKBIN}}" 42 .format(env.subst("${PART_PARENT_NAME}"))) 43 shlib = env.CCopy("${INSTALL_TEST_BIN}", dependent_shlib) 44 else: 45 dependent_shlib = env.subst("${{DEPENDS.{0}.SDKLIB}}" 46 .format(env.subst("${PART_PARENT_NAME}"))) 47 shlib = env.CCopy("${INSTALL_LIB}", dependent_shlib) 48 49 50 utest = env.UnitTest('${PART_SHORT_NAME}', 51 utest_files, 52 command_args=[ 53 '--gtest_filter=**', 54 '--gtest_color=yes', 55 '--gtest_print_time=1', 56 '--gtest_output=xml', 57 #'--gtest_break_on_failure', 58 #'--gtest_catch_exceptions=0', 59 ], 60 data_src=[], 61 make_pdb=(env.isConfigBasedOn('debug')), 62 INSTALL_BIN='${INSTALL_TEST_BIN}' 63 ) 64 Depends(utest, shlib) 65