blob: a8425eaefe640a39a01a1322f21d45e6752376ca [file] [log] [blame]
William A. Kennington IIIbbd1b562020-02-20 15:15:19 -08001gtest = dependency('gtest', main: true, disabler: true, required: false)
2gmock = dependency('gmock', disabler: true, required: false)
3if not gtest.found() or not gmock.found()
Patrick Williams9f2a21c2025-02-01 08:37:23 -05004 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 )
11 if gtest_proj.found()
12 gtest = declare_dependency(
13 dependencies: [
14 dependency('threads'),
15 gtest_proj.dependency('gtest'),
16 gtest_proj.dependency('gtest_main'),
17 ],
18 )
19 gmock = gtest_proj.dependency('gmock')
20 else
21 assert(not build_tests.enabled(), 'Googletest is required')
22 endif
William A. Kennington IIIbbd1b562020-02-20 15:15:19 -080023endif
William A. Kennington IIId4b33e92018-12-04 17:22:05 -080024
William A. Kennington III159a3562021-02-04 15:00:41 -080025
William A. Kennington IIId4b33e92018-12-04 17:22:05 -080026tests = [
Patrick Williams9f2a21c2025-02-01 08:37:23 -050027 'clock',
28 'event',
29 'exception',
30 'source/base',
31 'source/child',
32 'source/event',
33 'source/io',
34 'source/signal',
35 'source/time',
36 'utility/sdbus',
37 'utility/timer',
William A. Kennington IIId4b33e92018-12-04 17:22:05 -080038]
39
40foreach t : tests
Patrick Williams9f2a21c2025-02-01 08:37:23 -050041 test(
42 t,
43 executable(
44 t.underscorify(),
45 t + '.cpp',
46 implicit_include_directories: false,
47 dependencies: [
48 dependency('sdbusplus'),
49 sdeventplus_dep,
50 gtest,
51 gmock,
52 ],
53 ),
54 )
William A. Kennington IIId4b33e92018-12-04 17:22:05 -080055endforeach