mutter/cogl/tests/conform/meson.build

111 lines
2.9 KiB
Meson

cogl_test_conformance_sources = [
'test-conform-main.c',
'test-journal.c',
'test-primitive.c',
'test-sparse-pipeline.c',
'test-read-texture-formats.c',
'test-write-texture-formats.c',
'test-point-size.c',
'test-point-size-attribute.c',
'test-point-sprite.c',
'test-no-gl-header.c',
'test-version.c',
'test-layer-remove.c',
'test-alpha-test.c',
'test-map-buffer-range.c',
'test-npot-texture.c',
'test-alpha-textures.c',
'test-texture-get-set-data.c',
'test-framebuffer-get-bits.c',
'test-primitive-and-journal.c',
'test-copy-replace-texture.c',
'test-pipeline-cache-unrefs-texture.c',
'test-texture-no-allocate.c',
'test-pipeline-shader-state.c',
'test-texture-rg.c',
'test-fence.c',
]
#unported = [
# "test-viewport.c",
# "test-multitexture.c",
# "test-npot-texture.c",
# "test-object.c",
# "test-readpixels.c",
# "test-texture-mipmaps.c",
# "test-texture-pixmap-x11.c",",
#]
cogl_test_conformance_includes = [
cogl_includepath,
cogl_test_fixtures_includepath,
]
if have_installed_tests
cogl_installed_tests_cdata = configuration_data()
cogl_installed_tests_cdata.set('libexecdir', libexecdir)
cogl_installed_tests_cdata.set('apiversion', libmutter_api_version)
configure_file(
input: 'mutter-cogl.test.in',
output: 'mutter-cogl.test',
configuration: cogl_installed_tests_cdata,
install: true,
install_dir: mutter_installed_tests_datadir,
)
endif
libmutter_cogl_test_conformance = executable('test-conformance',
sources: cogl_test_conformance_sources,
c_args: cogl_debug_c_args + [
'-DCOGL_ENABLE_EXPERIMENTAL_API',
'-DCOGL_DISABLE_DEPRECATED',
'-DCOGL_DISABLE_DEPRECATION_WARNINGS',
'-DTESTS_DATADIR="@0@/tests/data"'.format(cogl_srcdir),
],
include_directories: cogl_test_conformance_includes,
dependencies: [
libmutter_cogl_dep,
libmutter_cogl_test_fixtures_dep,
],
install: have_installed_tests,
install_dir: cogl_installed_tests_libexecdir,
install_rpath: pkglibdir,
)
find_unit_tests = find_program('meson/find-conform-unit-tests.sh')
test_conform_main = files(join_paths(meson.current_source_dir(), 'test-conform-main.c'))
cogl_conform_unit_tests = custom_target('cogl-tests-conform-unit-tests',
output: 'unit-tests',
input: test_conform_main,
command: [find_unit_tests, '@INPUT@', '@OUTPUT@'],
install: have_installed_tests,
install_dir: cogl_installed_tests_libexecdir,
)
cogl_conformance_tests = run_command(
find_unit_tests, test_conform_main, '/dev/stdout',
check: true,
).stdout().strip().split('\n')
foreach test_target: cogl_conformance_tests
name_parts = []
foreach part: test_target.split('_')
if part != 'test'
name_parts += [part]
endif
endforeach
test_name = '-'.join(name_parts)
test(test_name, cogl_run_tests,
suite: ['cogl', 'cogl/conform'],
env: ['RUN_TESTS_QUIET=1'],
args: [
cogl_config_env,
libmutter_cogl_test_conformance,
test_target
],
is_parallel: false,
)
endforeach