gtest_dep = dependency('gtest', main: true, disabler: true, required: false) gmock_dep = dependency('gmock', disabler: true, required: false) if not gtest_dep.found() or not gmock_dep.found() gtest_proj = import('cmake').subproject('googletest', required: false) if gtest_proj.found() gtest_dep = declare_dependency( dependencies: [ dependency('threads'), gtest_proj.dependency('gtest'), gtest_proj.dependency('gtest_main'), ], ) gmock_dep = gtest_proj.dependency('gmock') else assert( not get_option('tests').allowed(), 'Googletest is required if tests are enabled', ) endif endif ut_deps_list = [ gtest_dep, ] ut_deps_list += default_deps src_inc = include_directories('..') test( 'test_utils', executable( 'test_utils', 'test_Utils.cpp', '../Utils.cpp', dependencies: ut_deps_list, implicit_include_directories: false, include_directories: src_inc, ), ) test( 'test_ipmb', executable( 'test_ipmb', '../ipmb/IpmbSensor.cpp', '../Utils.cpp', '../ipmb/IpmbSDRSensor.cpp', 'test_IpmbSensor.cpp', dependencies: ut_deps_list, link_with: [ utils_a, thresholds_a, devicemgmt_a ], implicit_include_directories: false, include_directories: src_inc, ), ) test( 'MCTPReactor', executable( 'test_MCTPReactor', 'test_MCTPReactor.cpp', '../mctp/MCTPReactor.cpp', '../mctp/MCTPEndpoint.cpp', dependencies: [ gmock_dep, ut_deps_list, utils_dep ], implicit_include_directories: false, include_directories: '../mctp' ) ) test( 'MCTPEndpoint', executable( 'test_MCTPEndpoint', 'test_MCTPEndpoint.cpp', '../mctp/MCTPEndpoint.cpp', dependencies: [ gmock_dep, ut_deps_list, utils_dep ], implicit_include_directories: false, include_directories: '../mctp' ) )