tests: only build when needed

Build the tests lazily, i.e., not before `meson test`. This helps with
build-times.
This commit is contained in:
Dirk-Jan C. Binnema
2025-08-15 21:01:05 +03:00
parent 0714873978
commit 34d3bf2e28
6 changed files with 53 additions and 6 deletions

View File

@ -1,4 +1,4 @@
## Copyright (C) 2024 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
## Copyright (C) 2025 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
@ -27,6 +27,7 @@ if get_option('b_sanitize') == 'none'
executable('test-mu-guile',
'test-mu-guile.cc',
install: false,
build_by_default: false,
cpp_args: [
'-DABS_SRCDIR="' + meson.current_source_dir() + '"',
'-DGUILE_LOAD_PATH="' + guile_load_path + '"',

View File

@ -1,4 +1,4 @@
## Copyright (C) 2022-2024 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
## Copyright (C) 2022-2025 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
@ -22,6 +22,7 @@ test('test-contact',
executable('test-contact',
'../mu-contact.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, gmime_dep, lib_mu_message_dep]))
@ -29,6 +30,7 @@ test('test-document',
executable('test-document',
'../mu-document.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, gmime_dep, lib_mu_message_dep]))
@ -36,6 +38,7 @@ test('test-fields',
executable('test-fields',
'../mu-fields.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, gmime_dep, lib_mu_message_dep]))
@ -43,6 +46,7 @@ test('test-flags',
executable('test-flags',
'../mu-flags.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, gmime_dep, lib_mu_message_dep]))
@ -50,12 +54,14 @@ test('test-message',
executable('test-message',
'../test-mu-message.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, gmime_dep, lib_mu_message_dep]))
test('test-priority',
executable('test-priority',
'../mu-priority.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, gmime_dep, lib_mu_message_dep]))
@ -63,6 +69,7 @@ test('test-message-file',
executable('test-message-file',
'../mu-message-file.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_message_dep]))
@ -70,5 +77,6 @@ test('test-message-part',
executable('test-message-part',
'../mu-message-part.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_message_dep]))

View File

@ -1,4 +1,4 @@
## Copyright (C) 2021-2024 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
## Copyright (C) 2021-2025 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
@ -18,7 +18,6 @@
# tests
#
#
# unit tests
#
@ -27,12 +26,15 @@ test('test-threads',
executable('test-threads',
'../mu-query-threads.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
test('test-contacts-cache',
executable('test-contacts-cache',
'../mu-contacts-cache.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -40,6 +42,7 @@ test('test-config',
executable('test-config',
'../mu-config.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -47,6 +50,7 @@ test('test-query-macros',
executable('test-query-macros',
'../mu-query-macros.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [lib_mu_dep]))
@ -54,6 +58,7 @@ test('test-query-processor',
executable('test-query-processor',
'../mu-query-processor.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [lib_mu_dep]))
@ -61,6 +66,7 @@ test('test-query-parser',
executable('test-query-parser',
'../mu-query-parser.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [lib_mu_dep]))
@ -68,6 +74,7 @@ test('test-query-xapianizer',
executable('test-query-xapianizer',
'../mu-query-xapianizer.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [lib_mu_dep]))
@ -76,6 +83,7 @@ test('test-indexer',
executable('test-indexer',
'../mu-indexer.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, config_h_dep,
lib_mu_dep]))
@ -84,6 +92,7 @@ test('test-scanner',
executable('test-scanner',
'../mu-scanner.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, config_h_dep,
lib_mu_utils_dep]))
@ -92,6 +101,7 @@ test('test-xapian-db',
executable('test-xapian-db',
'../mu-xapian-db.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [lib_mu_dep, config_h_dep]))
@ -99,27 +109,32 @@ test('test-maildir',
executable('test-maildir',
'test-mu-maildir.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, lib_mu_dep]))
test('test-msg',
executable('test-msg',
'test-mu-msg.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, lib_mu_dep]))
test('test-store',
executable('test-store',
'test-mu-store.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, lib_mu_dep]))
test('test-query',
executable('test-query',
'test-query.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, gmime_dep, lib_mu_dep]))
test('test-store-query',
executable('test-store-query',
'test-mu-store-query.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, gmime_dep, lib_mu_dep]))
#
# benchmarks

View File

@ -1,4 +1,4 @@
## Copyright (C) 2021-2024 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
## Copyright (C) 2021-2025 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
@ -25,54 +25,63 @@
test('test-sexp',
executable('test-sexp', '../mu-sexp.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_utils_dep]))
test('test-regex',
executable('test-regex', '../mu-regex.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_utils_dep]))
test('test-command-handler',
executable('test-command-handler', '../mu-command-handler.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_utils_dep]))
test('test-utils-file',
executable('test-utils-file', '../mu-utils-file.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, gio_unix_dep,config_h_dep, lib_mu_utils_dep]))
test('test-logger',
executable('test-logger', '../mu-logger.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_utils_dep,config_h_dep,thread_dep ]))
test('test-option',
executable('test-option', '../mu-option.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_utils_dep ]))
test('test-lang-detector',
executable('test-lang-detector', '../mu-lang-detector.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [ config_h_dep, glib_dep, lib_mu_utils_dep ]))
test('test-html-to-text',
executable('test-html-to-text', '../mu-html-to-text.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_utils_dep]))
test('test-error',
executable('test-error', '../mu-error.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_utils_dep]))
@ -80,4 +89,5 @@ test('test-mu-utils',
executable('test-mu-utils',
'test-utils.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, lib_mu_utils_dep]))

View File

@ -1,4 +1,4 @@
## Copyright (C) 2022-2024 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
## Copyright (C) 2022-2025 Dirk-Jan C. Binnema <djcb@djcbsoftware.nl>
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
@ -23,6 +23,7 @@ test('test-cmd-add',
executable('test-cmd-add',
'../mu-cmd-add.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -30,6 +31,7 @@ test('test-cmd-cfind',
executable('test-cmd-cfind',
'../mu-cmd-cfind.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -37,6 +39,7 @@ test('test-cmd-extract',
executable('test-cmd-extract',
'../mu-cmd-extract.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -44,6 +47,7 @@ test('test-cmd-find',
executable('test-cmd-find',
'../mu-cmd-find.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -51,6 +55,7 @@ test('test-cmd-index',
executable('test-cmd-index',
'../mu-cmd-index.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -58,6 +63,7 @@ test('test-cmd-init',
executable('test-cmd-init',
'../mu-cmd-init.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -65,6 +71,7 @@ test('test-cmd-mkdir',
executable('test-cmd-mkdir',
'../mu-cmd-mkdir.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -72,6 +79,7 @@ test('test-cmd-move',
executable('test-cmd-move',
'../mu-cmd-move.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -79,6 +87,7 @@ test('test-cmd-remove',
executable('test-cmd-remove',
'../mu-cmd-remove.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -86,6 +95,7 @@ test('test-cmd-verify',
executable('test-cmd-verify',
'../mu-cmd-verify.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -93,6 +103,7 @@ test('test-cmd-view',
executable('test-cmd-view',
'../mu-cmd-view.cc',
install: false,
build_by_default: false,
cpp_args: ['-DBUILD_TESTS'],
dependencies: [glib_dep, lib_mu_dep]))
@ -100,6 +111,7 @@ test('test-cmd-query',
executable('test-cmd-query',
'test-mu-query.cc',
install: false,
build_by_default: false,
dependencies: [glib_dep, config_h_dep, lib_mu_dep]))
gmime_test = executable(

View File

@ -67,6 +67,7 @@ if not get_option('tests').disabled()
executable('test-scm',
'mu-scm.cc',
install: false,
build_by_default: false,
dependencies: [mu_scm_dep],
cpp_args: [mu_scm_dir_arg, def_srcdir, '-DBUILD_TESTS']))
endif