xref: /openbmc/telemetry/tests/meson.build (revision 7f06f613fff4eb4d84f74ce9d0dc5c68211f6ab1)
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
22test(
23    'telemetry-ut',
24    executable(
25        'telemetry-ut',
26        [
27            '../src/persistent_json_storage.cpp',
28            '../src/report.cpp',
29            '../src/report_manager.cpp',
30            '../src/sensor_cache.cpp',
31            'src/test_persistent_json_storage.cpp',
32            'src/test_sensor_cache.cpp',
33            'src/utils/generate_unique_mock_id.cpp',
34        ],
35        dependencies: [
36            boost,
37            gmock_dep,
38            gtest_dep,
39            nlohmann_json,
40            phosphor_logging,
41            sdbusplus,
42        ],
43        include_directories: ['../src', 'src']
44    )
45)
46