File: test_use.py

package info (click to toggle)
python-vispy 0.14.3-1
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 8,840 kB
  • sloc: python: 59,436; javascript: 6,800; makefile: 69; sh: 6
file content (71 lines) | stat: -rw-r--r-- 1,838 bytes parent folder | download | duplicates (2)
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
"""Test the use function."""

from vispy.testing import assert_is, requires_pyopengl

from vispy.gloo import gl
from vispy.testing import run_tests_if_main


def teardown_module():
    gl.use_gl()  # Reset to default


@requires_pyopengl()
def test_use_desktop():
    """Testing that gl.use injects all names in gl namespace"""
    # Use desktop
    gl.use_gl('gl2')
    #
    for name in dir(gl.gl2):
        if name.lower().startswith('gl'):
            val1 = getattr(gl, name)
            val2 = getattr(gl.gl2, name)
            assert_is(val1, val2)

    # Use pyopengl
    gl.use_gl('pyopengl2')
    #
    for name in dir(gl.gl2):
        if name.lower().startswith('gl'):
            val1 = getattr(gl, name)
            val2 = getattr(gl.pyopengl2, name)
            assert_is(val1, val2)

    # Use gl+ 
    gl.use_gl('gl+')
    # uses all ES2 names from gl2 backend
    for name in dir(gl.gl2):
        if name.lower().startswith('gl'):
            val1 = getattr(gl, name)
            val2 = getattr(gl.pyopengl2, name)
            assert_is(val1, val2)
    # But provides extra names too
    for name in dir(gl.glplus):
        if name.lower().startswith('gl'):
            val1 = getattr(gl, name)
            val2 = getattr(gl.glplus, name)
            assert_is(val1, val2)

    # Use dummy
    gl.use_gl('dummy')
    #
    for name in dir(gl.gl2):
        if name.lower().startswith('gl'):
            val1 = getattr(gl, name)
            val2 = getattr(gl.dummy, name)
            assert_is(val1, val2)

    # Touch debug wrapper stuff
    gl.use_gl('gl2 debug')

    # Use desktop again
    gl.use_gl('gl2')
    #
    for name in dir(gl.gl2):
        if name.lower().startswith('gl'):
            val1 = getattr(gl, name)
            val2 = getattr(gl.gl2, name)
            assert_is(val1, val2)


run_tests_if_main()