xref: /openbmc/phosphor-user-manager/test/meson.build (revision a335311fc3417489d0cfe09712546db248e65f2f)
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').allowed(),
17            'Googletest is required if tests are enabled',
18        )
19    endif
20endif
21
22if ldap_dep.found()
23    test(
24        'ldap_config_test',
25        executable(
26            'ldap_config_test',
27            ['ldap_config_test.cpp', 'utils_test.cpp'],
28            include_directories: '..',
29            dependencies: [
30                gmock_dep,
31                gtest_dep,
32                ldap_dep,
33                phosphor_ldap_conf_dep,
34            ],
35            link_args: ['-lldap'],
36        ),
37    )
38endif
39
40test(
41    'user_mgr_test',
42    executable(
43        'user_mgr_test',
44        'user_mgr_test.cpp',
45        include_directories: '..',
46        dependencies: [gtest_dep, gmock_dep, user_manager_dep],
47    ),
48)
49