xref: /openbmc/telemetry/tests/meson.build (revision e2362796befa500153beb22d3eae0a959bf825f4)
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/metric.cpp',
27            '../src/persistent_json_storage.cpp',
28            '../src/report.cpp',
29            '../src/report_factory.cpp',
30            '../src/report_manager.cpp',
31            '../src/sensor.cpp',
32            '../src/sensor_cache.cpp',
33            'src/dbus_environment.cpp',
34            'src/main.cpp',
35            'src/stubs/dbus_sensor_object.cpp',
36            'src/test_detached_timer.cpp',
37            'src/test_metric.cpp',
38            'src/test_persistent_json_storage.cpp',
39            'src/test_report.cpp',
40            'src/test_report_manager.cpp',
41            'src/test_sensor.cpp',
42            'src/test_sensor_cache.cpp',
43            'src/test_transform.cpp',
44            'src/test_unique_call.cpp',
45            'src/utils/generate_unique_mock_id.cpp',
46        ],
47        dependencies: [
48            boost,
49            gmock_dep,
50            gtest_dep,
51            nlohmann_json,
52            phosphor_logging,
53            sdbusplus,
54        ],
55        include_directories: ['../src', 'src']
56    )
57)
58