1gtest = dependency('gtest', main: true, disabler: true, required: false) 2gmock = dependency('gmock', disabler: true, required: false) 3if not gtest.found() or not gmock.found() 4 gtest_opts = import('cmake').subproject_options() 5 gtest_opts.add_cmake_defines({'CMAKE_CXX_FLAGS': '-Wno-pedantic'}) 6 gtest_proj = import('cmake').subproject( 7 'googletest', 8 options: gtest_opts, 9 required: false) 10 if gtest_proj.found() 11 gtest = declare_dependency( 12 dependencies: [ 13 dependency('threads'), 14 gtest_proj.dependency('gtest'), 15 gtest_proj.dependency('gtest_main'), 16 ]) 17 gmock = gtest_proj.dependency('gmock') 18 else 19 assert(not get_option('tests').enabled(), 'Googletest is required') 20 endif 21endif 22 23test('entitymap_json', 24 executable( 25 'entitymap_json', 26 'entitymap_json_unittest.cpp', 27 include_directories: root_inc, 28 build_by_default: false, 29 implicit_include_directories: false, 30 dependencies: [ 31 entity_map_json_dep, 32 gmock, 33 gtest, 34 nlohmann_json_dep, 35 sdbusplus_dep, 36 ] 37 )) 38 39# Build/add oemrouter_unittest to test suite 40# Issue #3325 41# test('oemrouter', 42# executable( 43# 'oemrouter', 44# 'oemrouter_unittest.cpp', 45# include_directories: root_inc, 46# build_by_default: false, 47# implicit_include_directories: false, 48# dependencies: [gtest, gmock] 49# )) 50 51# Build/add message packing/unpacking unit tests 52test('message', 53 executable( 54 'message', 55 'message/pack.cpp', 56 'message/payload.cpp', 57 'message/unpack.cpp', 58 include_directories: root_inc, 59 build_by_default: false, 60 implicit_include_directories: false, 61 dependencies: [phosphor_logging_dep, crypto, systemd, sdbusplus_dep, gtest, gmock] 62 )) 63 64# Build/add closesession_unittest to test suite 65test('session/closesession', 66 executable( 67 'session_closesession', 68 'session/closesession_unittest.cpp', 69 include_directories: root_inc, 70 build_by_default: false, 71 implicit_include_directories: false, 72 dependencies: [gtest, gmock] 73 )) 74 75# Build/add sensorcommands_unittest to test suite 76test('dbus-sdr/sensorcommands', 77 executable( 78 'dbus-sdr_sensorcommands', 79 'dbus-sdr/sensorcommands_unittest.cpp', 80 include_directories: root_inc, 81 build_by_default: false, 82 implicit_include_directories: false, 83 dependencies: [sensorutils_dep, gtest, gmock] 84 )) 85