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 build_tests.enabled(), 'Googletest is required') 20 endif 21endif 22 23 24tests = [ 25 'clock', 26 'event', 27 'exception', 28 'source/base', 29 'source/child', 30 'source/event', 31 'source/io', 32 'source/signal', 33 'source/time', 34 'utility/sdbus', 35 'utility/timer', 36] 37 38foreach t : tests 39 test(t, 40 executable( 41 t.underscorify(), 42 t + '.cpp', 43 implicit_include_directories: false, 44 dependencies: [ 45 dependency('sdbusplus'), 46 sdeventplus_dep, 47 gtest, 48 gmock, 49 ])) 50endforeach 51