blob: 46e16e129f12f7ce32c7dd8d569e25644f526bfa [file] [log] [blame]
Patrick Williamsfae994b2025-02-01 08:37:51 -05001gtest = dependency(
2 'gtest',
3 main: true,
4 disabler: true,
5 required: get_option('tests'),
6)
Brandon Kim0d136632022-07-14 00:06:09 +00007gmock = dependency('gmock', disabler: true, required: get_option('tests'))
8
9if not gtest.found() or not gmock.found()
Patrick Williamsfae994b2025-02-01 08:37:51 -050010 gtest_proj = import('cmake').subproject('googletest', required: false)
11 if gtest_proj.found()
12 gtest = declare_dependency(
13 dependencies: [
14 gtest_proj.dependency('gtest'),
15 gtest_proj.dependency('gtest_main'),
16 ],
17 )
18 gmock = gtest_proj.dependency('gmock')
19 else
20 assert(not get_option('tests').allowed(), 'Googletest is required')
21 endif
Brandon Kim0d136632022-07-14 00:06:09 +000022endif
23
Patrick Williamsfae994b2025-02-01 08:37:51 -050024gtests = ['crc', 'tools_blob', 'tools_ipmi_error', 'tools_ipmi']
Brandon Kim0d136632022-07-14 00:06:09 +000025
26foreach t : gtests
Patrick Williamsfae994b2025-02-01 08:37:51 -050027 test(
28 t,
29 executable(
30 t.underscorify(),
31 t + '_unittest.cpp',
32 build_by_default: false,
33 implicit_include_directories: false,
34 dependencies: [ipmiblob, gtest, gmock],
35 ),
36 )
Brandon Kim0d136632022-07-14 00:06:09 +000037endforeach
38