xref: /openbmc/phosphor-logging/test/meson.build (revision b2b27085)
1gtest_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
22tests = [
23    'elog_quiesce_test',
24    'elog_update_ts_test',
25    'extensions_test',
26    'remote_logging_test_address',
27    'remote_logging_test_config',
28    'remote_logging_test_port',
29    'sdtest',
30    'serialization_test_path',
31    'serialization_test_properties',
32    'elog_errorwrap_test',
33]
34foreach t : tests
35    test(
36        'test_' + t.underscorify(),
37        executable(
38            'test-' + t.underscorify(),
39            t + '.cpp',
40            log_manager_sources,
41            '../phosphor-rsyslog-config/server-conf.cpp',
42            link_with: libphosphor_logging,
43            cpp_args: [
44                '-DTESTCASE=' + t.underscorify(),
45                '-DTESTCASE_' + t.underscorify(),
46            ],
47            dependencies: [
48                cereal_dep,
49                gmock_dep,
50                gtest_dep,
51                pdi_dep,
52                sdbusplus_dep,
53                sdeventplus_dep,
54            ],
55            include_directories: include_directories('..', '../gen'),
56        )
57    )
58endforeach
59