| gtest = dependency('gtest', main: true, disabler: true, required: false) |
| gmock = dependency('gmock', disabler: true, required: false) |
| if not gtest.found() or not gmock.found() |
| gtest_opts = import('cmake').subproject_options() |
| gtest_opts.add_cmake_defines({'CMAKE_CXX_FLAGS': '-Wno-pedantic'}) |
| gtest_proj = import('cmake').subproject( |
| 'googletest', |
| options: gtest_opts, |
| required: false) |
| if gtest_proj.found() |
| gtest = declare_dependency( |
| dependencies: [ |
| threads_dep, |
| gtest_proj.dependency('gtest'), |
| gtest_proj.dependency('gtest_main'), |
| ]) |
| gmock = gtest_proj.dependency('gmock') |
| else |
| assert(not build_tests.enabled(), 'Googletest is required') |
| endif |
| endif |
| |
| tests = [ |
| 'firmware_mtd_updater_unittest', |
| 'firmware_spi_updater_unittest', |
| 'message_file_unittest', |
| 'message_reinit_unittest', |
| 'message_util_unittest', |
| 'mtd_util_unittest', |
| 'host_command_unittest', |
| 'payload_update_unittest', |
| 'ec_util_unittest', |
| 'hoth_unittest', |
| 'hoth_state_unittest', |
| 'log_collector_util_test', |
| ] |
| |
| foreach t : tests |
| test(t, executable(t.underscorify(), t + '.cpp', |
| implicit_include_directories: false, |
| dependencies: [libhothd_dep, gtest, gmock])) |
| endforeach |