mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-11-11 11:56:16 +01:00
fd8424a974
Remove unused tests/timelooop.c and tests/timeloop-basic.c because these programs are manual performance tests which are no more relevant for glib. They were used for the writing of GMainLoop but since then they haven't not much been used in 22 years, it is safe to remove them. Helps issue #1434
126 lines
4.0 KiB
Meson
126 lines
4.0 KiB
Meson
# tests
|
|
|
|
# Not entirely random of course, but at least it changes over time
|
|
random_number = minor_version + meson.version().split('.').get(1).to_int()
|
|
|
|
test_env = environment()
|
|
test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
|
|
test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
|
|
test_env.set('G_DEBUG', 'gc-friendly')
|
|
test_env.set('MALLOC_CHECK_', '2')
|
|
test_env.set('MALLOC_PERTURB_', '@0@'.format(random_number % 256))
|
|
|
|
test_cargs = ['-DG_LOG_DOMAIN="GLib"', '-UG_DISABLE_ASSERT']
|
|
|
|
subdir('gobject')
|
|
subdir('refcount')
|
|
|
|
tests = {
|
|
'gio-test' : {},
|
|
'mainloop-test' : {},
|
|
'mapping-test' : {},
|
|
'slice-threadinit' : {
|
|
'dependencies' : [libgthread_dep],
|
|
},
|
|
'thread-test' : {},
|
|
'threadpool-test' : {'suite' : ['slow']},
|
|
'module-test-library' : {
|
|
'dependencies' : [libgmodule_dep],
|
|
'export_dynamic' : true,
|
|
'source': 'module-test.c',
|
|
'c_args': ['-DMODULE_TYPE="library"'],
|
|
},
|
|
'module-test-plugin' : {
|
|
'dependencies' : [libgmodule_dep],
|
|
'export_dynamic' : true,
|
|
'source': 'module-test.c',
|
|
'c_args': ['-DMODULE_TYPE="plugin"'],
|
|
},
|
|
}
|
|
|
|
test_extra_programs = {
|
|
'slice-test' : {
|
|
'extra_sources' : ['memchunks.c'],
|
|
},
|
|
'assert-msg-test' : {},
|
|
}
|
|
|
|
if host_machine.system() == 'windows'
|
|
test_extra_programs += {
|
|
'spawn-test-win32-gui' : {'gui_app' : true}
|
|
}
|
|
endif
|
|
|
|
module_suffix = []
|
|
# Keep the autotools convention for shared module suffix because GModule
|
|
# depends on it: https://gitlab.gnome.org/GNOME/glib/issues/520
|
|
if ['darwin', 'ios'].contains(host_machine.system())
|
|
module_suffix = 'so'
|
|
endif
|
|
|
|
foreach module : ['moduletestplugin_a', 'moduletestplugin_b']
|
|
shared_module(module + '_plugin', 'lib@0@.c'.format(module),
|
|
dependencies : [libglib_dep, libgmodule_dep],
|
|
install_dir : installed_tests_execdir,
|
|
install : installed_tests_enabled,
|
|
name_suffix : module_suffix
|
|
)
|
|
shared_library(module + '_library', 'lib@0@.c'.format(module),
|
|
dependencies : [libglib_dep, libgmodule_dep],
|
|
install_dir : installed_tests_execdir,
|
|
install : installed_tests_enabled,
|
|
name_suffix : module_suffix
|
|
)
|
|
endforeach
|
|
|
|
common_c_args = test_cargs + ['-DGLIB_DISABLE_DEPRECATION_WARNINGS']
|
|
common_deps = [libm, thread_dep, libglib_dep]
|
|
|
|
foreach test_name, extra_args : tests
|
|
source = extra_args.get('source', test_name + '.c')
|
|
extra_sources = extra_args.get('extra_sources', [])
|
|
install = installed_tests_enabled and extra_args.get('install', true)
|
|
template = extra_args.get('tap', false) ? installed_tests_template_tap : installed_tests_template
|
|
|
|
if install
|
|
test_conf = configuration_data()
|
|
test_conf.set('installed_tests_dir', installed_tests_execdir)
|
|
test_conf.set('program', test_name)
|
|
test_conf.set('env', '')
|
|
configure_file(
|
|
input: template,
|
|
output: test_name + '.test',
|
|
install_dir: installed_tests_metadir,
|
|
configuration: test_conf
|
|
)
|
|
endif
|
|
|
|
# FIXME? $(GLIB_DEBUG_FLAGS)
|
|
exe = executable(test_name, [source, extra_sources],
|
|
c_args : common_c_args + extra_args.get('c_args', []),
|
|
dependencies : common_deps + extra_args.get('dependencies', []),
|
|
export_dynamic : extra_args.get('export_dynamic', false),
|
|
include_directories : extra_args.get('include_directories', []),
|
|
install_dir: installed_tests_execdir,
|
|
install: install,
|
|
)
|
|
|
|
suite = ['glib'] + extra_args.get('suite', [])
|
|
timeout = suite.contains('slow') ? test_timeout_slow : test_timeout
|
|
# FIXME? TESTS_ENVIRONMENT = LIBCHARSET_ALIAS_DIR=$(top_builddir)/glib/libcharset
|
|
test(test_name, exe, env : test_env, timeout : timeout, suite : suite)
|
|
endforeach
|
|
|
|
foreach program_name, extra_args : test_extra_programs
|
|
source = extra_args.get('source', program_name + '.c')
|
|
extra_sources = extra_args.get('extra_sources', [])
|
|
install = installed_tests_enabled and extra_args.get('install', true)
|
|
executable(program_name, [source, extra_sources],
|
|
c_args : common_c_args,
|
|
dependencies : common_deps + extra_args.get('dependencies', []),
|
|
install_dir : installed_tests_execdir,
|
|
install : install,
|
|
gui_app : extra_args.get('gui_app', false),
|
|
)
|
|
endforeach
|