blob: 3039090bde5bce8baf014b721e554da1b6f878ba [file] [log] [blame]
George Liu07f94f02022-04-14 14:09:44 +08001gtest_dep = dependency('gtest', main: true, disabler: true, required: false)
2gmock_dep = dependency('gmock', disabler: true, required: false)
3if not gtest_dep.found() or not gmock_dep.found()
4 gtest_proj = import('cmake').subproject('googletest', required: false)
5 if gtest_proj.found()
6 gtest_dep = declare_dependency(
7 dependencies: [
8 dependency('threads'),
9 gtest_proj.dependency('gtest'),
10 gtest_proj.dependency('gtest_main'),
11 ]
12 )
13 gmock_dep = gtest_proj.dependency('gmock')
14 else
15 assert(
16 not get_option('tests').enabled(),
17 'Googletest is required if tests are enabled'
18 )
19 endif
20endif
21
22test_sources = [
23 generated_cpp,
24 gen_serialization_hpp,
25 '../association_manager.cpp',
26 '../manager.cpp',
27 '../functor.cpp',
28 '../errors.cpp',
29]
30
31tests = [
32 'associations_test.cpp',
33 'interface_ops_test.cpp',
34 'manager_test.cpp',
35 'serialize_test.cpp',
36 'types_test.cpp',
37 'utils_test.cpp',
38]
39
40test_deps = [
41 sdbusplus_dep,
42 phosphor_dbus_interfaces_dep,
43 phosphor_logging_dep,
44]
45
46foreach t : tests
47 test(t, executable(t.underscorify(), t,
48 test_sources,
49 include_directories: ['..'],
50 dependencies: [
51 gtest_dep,
52 gmock_dep,
53 test_deps,
54 ]),
55 workdir: meson.current_source_dir())
56endforeach