Merge branch 'cxx-test' into 'main'

Removing redundant cxx test tests/cxx-test.cpp

See merge request GNOME/glib!2391
This commit is contained in:
Philip Withnall 2021-12-14 15:23:16 +00:00
commit f493d3fd24
9 changed files with 133 additions and 15 deletions

26
gio/tests/cxx.cpp Normal file
View File

@ -0,0 +1,26 @@
/* Copyright (C) 2001 Sebastian Wilhelmi <wilhelmi@google.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
/* A trivial C++ program to be compiled in C++ mode, which
* smoketests that the GIO headers are valid C++ headers. */
#include <gio/gio.h>
int
main ()
{
return 0;
}

View File

@ -52,6 +52,9 @@ gio_tests = {
'contenttype' : {},
'converter-stream' : {},
'credentials' : {},
'cxx' : {
'source' : ['cxx.cpp'],
},
'data-input-stream' : {},
'data-output-stream' : {},
'defaultvalue' : {'extra_sources' : [giotypefuncs_inc]},

View File

@ -126,3 +126,7 @@ if meson.version().version_compare('>=0.54.0')
meson.override_dependency('gmodule-export-2.0', libgmodule_dep)
meson.override_dependency('gmodule-2.0', libgmodule_dep)
endif
if build_tests
subdir('tests')
endif

26
gmodule/tests/cxx.cpp Normal file
View File

@ -0,0 +1,26 @@
/* Copyright (C) 2001 Sebastian Wilhelmi <wilhelmi@google.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
/* A trivial C++ program to be compiled in C++ mode, which
* smoketests that the GModule headers are valid C++ headers. */
#include <gmodule.h>
int
main ()
{
return 0;
}

45
gmodule/tests/meson.build Normal file
View File

@ -0,0 +1,45 @@
gmodule_tests = {
'cxx' : {
'source' : ['cxx.cpp'],
},
}
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_deps = [libm, thread_dep, libglib_dep, libgmodule_dep]
test_cargs = ['-DG_LOG_DOMAIN="GModule"', '-UG_DISABLE_ASSERT']
foreach test_name, extra_args : gmodule_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,
configuration: test_conf
)
endif
exe = executable(test_name, source,
c_args : test_cargs + extra_args.get('c_args', []),
link_args : extra_args.get('link_args', []),
dependencies : test_deps + extra_args.get('dependencies', []),
install_dir: installed_tests_execdir,
install: install,
)
suite = ['gmodule'] + extra_args.get('suite', [])
timeout = suite.contains('slow') ? test_timeout_slow : test_timeout
test(test_name, exe, env : test_env, timeout : timeout, suite : suite)
endforeach

26
gobject/tests/cxx.cpp Normal file
View File

@ -0,0 +1,26 @@
/* Copyright (C) 2001 Sebastian Wilhelmi <wilhelmi@google.com>
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this library; if not, see <http://www.gnu.org/licenses/>.
*/
/* A trivial C++ program to be compiled in C++ mode, which
* smoketests that the GObject headers are valid C++ headers. */
#include <glib-object.h>
int
main ()
{
return 0;
}

View File

@ -29,6 +29,9 @@ marshalers_c = custom_target('marshalers_c',
gobject_tests = {
'qdata' : {},
'boxed' : {},
'cxx' : {
'source' : ['cxx.cpp'],
},
'enums' : {},
'param' : {},
'threadtests' : {},

View File

@ -1,10 +0,0 @@
#include <glib.h>
#include <gmodule.h>
#include <glib-object.h>
#include <gio/gio.h>
int
main ()
{
return 0;
}

View File

@ -50,11 +50,6 @@ tests = {
'source': 'module-test.c',
'c_args': ['-DMODULE_TYPE="plugin"'],
},
'cxx-test' : {
'source' : 'cxx-test.cpp',
'include_directories' : gmoduleinc,
'dependencies' : [libgio_dep],
},
}
test_extra_programs = {