summaryrefslogtreecommitdiff
path: root/src/tests/cogl/conform/meson.build
blob: e076733a58a94ad7ea0ed3b8766e6cdbcfd9f03d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
cogl_tests = [
  [ 'test-atlas-migration', [] ],
  [ 'test-blend-strings', [] ],
  [ 'test-blend', [] ],
  [ 'test-depth-test', [] ],
  [ 'test-color-hsl', [] ],
  [ 'test-backface-culling', [] ],
  [ 'test-just-vertex-shader', [] ],
  [ 'test-pipeline-user-matrix', [] ],
  [ 'test-pipeline-uniforms', [] ],
  [ 'test-pixel-buffer', [] ],
  [ 'test-premult', [] ],
  [ 'test-snippets', [] ],
  [ 'test-wrap-modes', [] ],
  [ 'test-sub-texture', [] ],
  [ 'test-custom-attributes', [] ],
  [ 'test-offscreen', [] ],
  [ 'test-journal', [] ],
  [ 'test-primitive', [] ],
  [ 'test-sparse-pipeline', [] ],
  [ 'test-read-texture-formats', ['gl', 'gl3'] ],
  [ 'test-write-texture-formats', [] ],
  [ 'test-point-size', [] ],
  [ 'test-point-size-attribute', [] ],
  [ 'test-point-sprite', [] ],
  [ 'test-point-sprite-known-failure', ['gl', 'gl3', 'gles2'] ],
  [ 'test-no-gl-header', [] ],
  [ 'test-layer-remove', [] ],
  [ 'test-alpha-test', [] ],
  [ 'test-map-buffer-range', [] ],
  [ 'test-npot-texture', [] ],
  [ 'test-alpha-textures', [] ],
  [ 'test-texture-get-set-data', [] ],
  [ 'test-framebuffer-get-bits', [] ],
  [ 'test-primitive-and-journal', [] ],
  [ 'test-copy-replace-texture', [] ],
  [ 'test-pipeline-cache-unrefs-texture', [] ],
  [ 'test-texture-no-allocate', [] ],
  [ 'test-pipeline-shader-state', [] ],
  [ 'test-texture-rg', [] ],
  [ 'test-fence', [] ],
]

#unported = [
#  "test-multitexture",
#  "test-npot-texture",
#  "test-object",
#  "test-readpixels",
#  "test-texture-mipmaps",
#  "test-texture-pixmap-x11",
#  "test-viewport",
#]

cogl_test_conformance_includes = [
  tests_includepath,
  cogl_includepath,
]

cogl_test_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),
  '-DGETTEXT_PACKAGE="@0@"'.format(meson.project_name()),
]

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_ENABLE_DIAGNOSTIC', '0')
test_env.set('MUTTER_TEST_PLUGIN_PATH', '@0@'.format(default_plugin.full_path()))

cogl_test_variants = [ 'gl', 'gl3', 'gles2' ]

foreach cogl_test: cogl_tests
  test_case = cogl_test[0]
  known_failures = cogl_test[1]
  test_name = 'cogl-' + test_case
  test_executable = executable(test_name,
    sources: [
      cogl_test_utils,
      test_case + '.c',
    ],
    c_args: cogl_test_c_args,
    include_directories: cogl_test_conformance_includes,
    dependencies: [
      libmutter_test_dep,
    ],
    install_rpath: pkglibdir,
  )

  foreach variant: cogl_test_variants
    variant_test_env = test_env
    variant_test_env.set('COGL_DRIVER', variant)

    test(test_name + '-' + variant, test_executable,
      suite: ['cogl', 'cogl/conform'],
      env: variant_test_env,
      is_parallel: false,
      should_fail: variant in known_failures,
    )
  endforeach
endforeach