1phosphor_regulators_tests_include_directories = include_directories(
2    '.',
3    'actions'
4)
5
6phosphor_regulators_tests_source_files = [
7    'chassis_tests.cpp',
8    'config_file_parser_error_tests.cpp',
9    'config_file_parser_tests.cpp',
10    'configuration_tests.cpp',
11    'device_tests.cpp',
12    'error_history_tests.cpp',
13    'error_logging_utils_tests.cpp',
14    'exception_utils_tests.cpp',
15    'ffdc_file_tests.cpp',
16    'id_map_tests.cpp',
17    'pmbus_error_tests.cpp',
18    'pmbus_utils_tests.cpp',
19    'presence_detection_tests.cpp',
20    'rail_tests.cpp',
21    'rule_tests.cpp',
22    'sensor_monitoring_tests.cpp',
23    'system_tests.cpp',
24    'temporary_file_tests.cpp',
25    'write_verification_error_tests.cpp',
26
27    'actions/action_environment_tests.cpp',
28    'actions/action_error_tests.cpp',
29    'actions/action_utils_tests.cpp',
30    'actions/and_action_tests.cpp',
31    'actions/compare_presence_action_tests.cpp',
32    'actions/compare_vpd_action_tests.cpp',
33    'actions/i2c_action_tests.cpp',
34    'actions/i2c_compare_bit_action_tests.cpp',
35    'actions/i2c_compare_byte_action_tests.cpp',
36    'actions/i2c_compare_bytes_action_tests.cpp',
37    'actions/i2c_write_bit_action_tests.cpp',
38    'actions/i2c_write_byte_action_tests.cpp',
39    'actions/i2c_write_bytes_action_tests.cpp',
40    'actions/if_action_tests.cpp',
41    'actions/not_action_tests.cpp',
42    'actions/or_action_tests.cpp',
43    'actions/pmbus_read_sensor_action_tests.cpp',
44    'actions/pmbus_write_vout_command_action_tests.cpp',
45    'actions/run_rule_action_tests.cpp',
46    'actions/set_device_action_tests.cpp'
47]
48
49# Long-running tests that are excluded from CI
50if get_option('long-tests').enabled()
51    # This test requires the Python module 'jsonschema'
52    phosphor_regulators_tests_source_files += 'validate-regulators-config_tests.cpp'
53endif
54
55test('phosphor-regulators-tests',
56     executable('phosphor-regulators-tests',
57                phosphor_regulators_tests_source_files,
58                dependencies: [
59                    gmock,
60                    gtest,
61                    sdbusplus
62                ],
63                link_args: dynamic_linker,
64                build_rpath: get_option('oe-sdk').enabled() ? rpath : '',
65                link_with: [
66                    phosphor_regulators_library,
67                    libi2c_dev_mock
68                ],
69                implicit_include_directories: false,
70                include_directories: [
71                    phosphor_regulators_include_directories,
72                    phosphor_regulators_tests_include_directories,
73                    libi2c_inc,
74                    libi2c_dev_mock_inc
75                ]
76     ),
77     timeout : 180
78)
79