xref: /openbmc/phosphor-modbus/tests/meson.build (revision cf77ef540b925e10e3078bbdfbd795a0c1d9ff1f)
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    'test_modbus_commands',
24    executable(
25        'test_modbus_commands',
26        'test_modbus_commands.cpp',
27        dependencies: [gtest_dep, gmock_dep, default_deps, modbus_rtu_dep],
28        include_directories: ['.'],
29    ),
30)
31
32test(
33    'test_modbus',
34    executable(
35        'test_modbus',
36        'test_modbus.cpp',
37        'modbus_server_tester.cpp',
38        dependencies: [gtest_dep, gmock_dep, default_deps, modbus_rtu_dep],
39        include_directories: ['.'],
40    ),
41)
42
43test(
44    'test_port',
45    executable(
46        'test_port',
47        'test_port.cpp',
48        'modbus_server_tester.cpp',
49        dependencies: [gtest_dep, gmock_dep, default_deps, modbus_rtu_dep],
50        include_directories: ['.', common_include],
51    ),
52)
53
54test(
55    'test_inventory',
56    executable(
57        'test_inventory',
58        'test_inventory.cpp',
59        'modbus_server_tester.cpp',
60        inventory_src,
61        dependencies: [gtest_dep, gmock_dep, default_deps, modbus_rtu_dep],
62        include_directories: ['.', common_include],
63    ),
64)
65
66test(
67    'test_sensors',
68    executable(
69        'test_sensors',
70        'test_sensors.cpp',
71        'modbus_server_tester.cpp',
72        device_src,
73        firmware_src,
74        link_with: [modbus_common_lib],
75        dependencies: [gtest_dep, gmock_dep, default_deps, modbus_rtu_dep],
76        include_directories: ['.', common_include],
77    ),
78)
79
80test(
81    'test_events',
82    executable(
83        'test_events',
84        'test_events.cpp',
85        link_with: [modbus_common_lib],
86        dependencies: [gtest_dep, gmock_dep, default_deps, modbus_rtu_dep],
87        include_directories: ['.', common_include],
88    ),
89)
90
91test(
92    'test_firmware',
93    executable(
94        'test_firmware',
95        'test_firmware.cpp',
96        'modbus_server_tester.cpp',
97        firmware_src,
98        link_with: [modbus_common_lib],
99        dependencies: [gtest_dep, gmock_dep, default_deps, modbus_rtu_dep],
100        include_directories: ['.', common_include],
101    ),
102)
103