xref: /openbmc/telemetry/tests/meson.build (revision b5645947)
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            ]
11        )
12        gmock_dep = gtest_proj.dependency('gmock')
13  else
14        assert(
15            not get_option('tests').enabled(),
16            'Googletest is required if tests are enabled'
17        )
18  endif
19endif
20
21test(
22    'telemetry-ut',
23    executable(
24        'telemetry-ut',
25        [
26            '../src/persistent_json_storage.cpp',
27            '../src/report.cpp',
28            '../src/report_manager.cpp',
29            '../src/sensor.cpp',
30            '../src/sensor_cache.cpp',
31            'src/dbus_environment.cpp',
32            'src/main.cpp',
33            'src/stubs/dbus_sensor_object.cpp',
34            'src/test_detached_timer.cpp',
35            'src/test_persistent_json_storage.cpp',
36            'src/test_sensor.cpp',
37            'src/test_sensor_cache.cpp',
38            'src/test_unique_call.cpp',
39            'src/utils/generate_unique_mock_id.cpp',
40        ],
41        dependencies: [
42            boost,
43            gmock_dep,
44            gtest_dep,
45            nlohmann_json,
46            phosphor_logging,
47            sdbusplus,
48        ],
49        include_directories: ['../src', 'src']
50    )
51)
52