blob: 18f773207ac0579e80a9f1d2e7f3c075e5fc3d28 [file] [log] [blame]
Brandon Kim55dcada2022-03-09 02:18:01 -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 Williams57d05172025-03-03 11:09:12 -05004 gtest_opt = import('cmake').subproject_options()
5 gtest_opt.append_compile_args('c++', ['-DCMAKE_CXX_FLAGS=-Wno-pedantic'])
6 gtest_proj = cmake.subproject(
7 'googletest',
8 options: gtest_opt,
9 required: false,
10 )
Brandon Kim55dcada2022-03-09 02:18:01 -080011
Patrick Williams57d05172025-03-03 11:09:12 -050012 if gtest_proj.found()
13 gtest = declare_dependency(
14 dependencies: [
15 dependency('threads'),
16 gtest_proj.dependency('gtest'),
17 gtest_proj.dependency('gtest_main'),
18 ],
19 )
20 gmock = gtest_proj.dependency('gmock')
21 endif
Brandon Kim55dcada2022-03-09 02:18:01 -080022endif
23
Brandon Kimfcbc3db2022-06-06 21:26:18 -070024test_dep = declare_dependency(
Patrick Williams57d05172025-03-03 11:09:12 -050025 include_directories: include_directories('include'),
26 dependencies: [bios_bmc_smm_error_logger_dep, gtest, gmock, rde_dep],
Brandon Kimfcbc3db2022-06-06 21:26:18 -070027)
28
Brandon Kim55dcada2022-03-09 02:18:01 -080029gtests = [
Patrick Williams57d05172025-03-03 11:09:12 -050030 'pci_handler',
31 'rde_dictionary_manager',
32 'buffer',
33 'external_storer_file',
34 'rde_handler',
Brandon Kim55dcada2022-03-09 02:18:01 -080035]
36foreach t : gtests
Patrick Williams57d05172025-03-03 11:09:12 -050037 test(
38 t,
39 executable(
40 t.underscorify(),
41 t + '_test.cpp',
42 build_by_default: false,
43 implicit_include_directories: false,
44 dependencies: test_dep,
45 ),
46 )
Brandon Kim55dcada2022-03-09 02:18:01 -080047endforeach