| 
									
										
										
										
											2022-11-10 15:33:34 +00:00
										 |  |  | gthread_tests = {
 | 
					
						
							|  |  |  |   'init' : {},
 | 
					
						
							|  |  |  | }
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | test_env = environment()
 | 
					
						
							|  |  |  | test_env.set('G_TEST_SRCDIR', meson.current_source_dir())
 | 
					
						
							|  |  |  | test_env.set('G_TEST_BUILDDIR', meson.current_build_dir())
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | test_deps = [thread_dep, libglib_dep, libgthread_dep]
 | 
					
						
							|  |  |  | test_cargs = ['-DG_LOG_DOMAIN="GLib-GThread"', '-UG_DISABLE_ASSERT']
 | 
					
						
							|  |  |  | test_cpp_args = test_cargs
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | foreach test_name, extra_args : gthread_tests
 | 
					
						
							|  |  |  |   source = extra_args.get('source', test_name + '.c')
 | 
					
						
							|  |  |  |   install = installed_tests_enabled and extra_args.get('install', true)
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   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: installed_tests_template_tap,
 | 
					
						
							|  |  |  |       output: test_name + '.test',
 | 
					
						
							|  |  |  |       install_dir: installed_tests_metadir,
 | 
					
						
							|  |  |  |       install_tag: 'tests',
 | 
					
						
							|  |  |  |       configuration: test_conf
 | 
					
						
							|  |  |  |     )
 | 
					
						
							|  |  |  |   endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   exe = executable(test_name, source,
 | 
					
						
							|  |  |  |     c_args : test_cargs + extra_args.get('c_args', []),
 | 
					
						
							|  |  |  |     cpp_args : test_cpp_args + extra_args.get('cpp_args', []),
 | 
					
						
							|  |  |  |     dependencies : test_deps + extra_args.get('dependencies', []),
 | 
					
						
							|  |  |  |     install_dir: installed_tests_execdir,
 | 
					
						
							|  |  |  |     install_tag: 'tests',
 | 
					
						
							|  |  |  |     install: install,
 | 
					
						
							|  |  |  |   )
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   suite = ['gthread'] + extra_args.get('suite', [])
 | 
					
						
							|  |  |  |   timeout = suite.contains('slow') ? test_timeout_slow : test_timeout
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   if extra_args.get('can_fail', false)
 | 
					
						
							|  |  |  |     suite += 'failing'
 | 
					
						
							|  |  |  |   endif
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-12-15 21:40:35 +01:00
										 |  |  |   test(test_name,
 | 
					
						
							|  |  |  |     exe,
 | 
					
						
							|  |  |  |     protocol : extra_args.get('protocol', test_protocol),
 | 
					
						
							|  |  |  |     env : test_env,
 | 
					
						
							|  |  |  |     timeout : timeout,
 | 
					
						
							|  |  |  |     suite : suite,
 | 
					
						
							|  |  |  |   )
 | 
					
						
							| 
									
										
										
										
											2022-11-10 15:33:34 +00:00
										 |  |  | endforeach
 | 
					
						
							| 
									
										
										
										
											2023-04-14 19:56:32 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | if have_bash and have_pkg_config
 | 
					
						
							|  |  |  |   test('gthread-2.0-pkg-config',
 | 
					
						
							|  |  |  |     bash,
 | 
					
						
							|  |  |  |     args: [
 | 
					
						
							|  |  |  |       '-xe', '-c',
 | 
					
						
							|  |  |  |       '\n'.join([
 | 
					
						
							|  |  |  |         'pkg-config --validate gthread-2.0',
 | 
					
						
							|  |  |  |         'test "$(pkg-config --modversion gthread-2.0)" = "@0@"'.format(glib_version),
 | 
					
						
							|  |  |  |         'test "$(pkg-config --variable=prefix gthread-2.0)" = "@0@"'.format(
 | 
					
						
							|  |  |  |           get_option('prefix')),
 | 
					
						
							|  |  |  |       ]),
 | 
					
						
							|  |  |  |     ],
 | 
					
						
							|  |  |  |     suite: ['gthread', 'no-valgrind', 'pkg-config'],
 | 
					
						
							|  |  |  |     env: {
 | 
					
						
							|  |  |  |       'PKG_CONFIG_PATH': meson.project_build_root() / 'meson-private',
 | 
					
						
							|  |  |  |     },
 | 
					
						
							|  |  |  |   )
 | 
					
						
							|  |  |  | endif
 |