Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pytest tests/interactive broken in win11 + python 3.12 #965

Open
ccanepa opened this issue Oct 8, 2023 · 2 comments
Open

pytest tests/interactive broken in win11 + python 3.12 #965

ccanepa opened this issue Oct 8, 2023 · 2 comments
Labels
bug Something isn't working

Comments

@ccanepa
Copy link
Contributor

ccanepa commented Oct 8, 2023

pytest tests/interactive broken in win11 + python 3.12

pyglet master at
(py312_p) D:\dev\pyglet2>git log
commit 237c56c (HEAD -> master, origin/master, origin/HEAD)
Author: Benjamin
Sun Oct 8 15:38:58 2023 +0900
ComputeShaderProgram: expose MAX values directly on the class.

test run aborted with ctrl + C after a while, output was

(py312_p) D:\dev\pyglet2>python -m pytest tests/interactive
============================================ test session starts =============================================
platform win32 -- Python 3.12.0, pytest-7.4.2, pluggy-1.3.0
rootdir: D:\dev\pyglet2
configfile: pytest.ini
plugins: cov-4.1.0, session2file-0.1.11
collected 115 items

tests\interactive\graphics\test_multitexture.py
================================================================================
test_multitexture
Verify that multiple textures can be applied to the same object.
--------------------------------------------------------------------------------
F
tests\interactive\image\test_image.py
================================================================================
test_checkerboard
Test that the checkerboard pattern looks correct.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_16bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_1bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_24bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_32bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_4bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_8bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgba_32bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F

================================================== FAILURES ==================================================
_____________________________________________ test_multitexture ______________________________________________

multi_texture_fixture = <tests.interactive.graphics.test_multitexture.MultiTextureFixture object at 0x0000017F99BCDBE0>
test_data = <tests.base.data.TestDataFixture object at 0x0000017F99BCDCA0>

    def test_multitexture(multi_texture_fixture, test_data):
            'Verify that multiple textures can be applied to the same object.'
>           w = multi_texture_fixture.create_window(height=400)

tests\interactive\graphics\test_multitexture.py:87:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\graphics\test_multitexture.py:23: in create_window
    self.render()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.graphics.test_multitexture.MultiTextureFixture object at 0x0000017F99BCDBE0>

    def render(self):
        # Enable blending
        gl.glEnable(gl.GL_BLEND)
        gl.glBlendFunc(gl.GL_SRC_ALPHA, gl.GL_ONE_MINUS_SRC_ALPHA)

        # Enable transparency
>       gl.glEnable(gl.GL_ALPHA_TEST)
E       AttributeError: module 'pyglet.gl' has no attribute 'GL_ALPHA_TEST'

tests\interactive\graphics\test_multitexture.py:32: AttributeError
_____________________________________________ test_checkerboard ______________________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99BCD8E0>

    def test_checkerboard(image_test):
        """Test that the checkerboard pattern looks correct."""
        image_test.create_window()
>       image_test.ask_question(
                "Do you see a checkboard pattern in two levels of grey?"
                )

tests\interactive\image\test_image.py:160:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99BCD8E0>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgb_16bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99BCEAE0>
image_name = 'rgb_16bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99BCEAE0>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
_______________________________________ test_bmp_loading[rgb_1bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99C38E30>
image_name = 'rgb_1bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99C38E30>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgb_24bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99C3A360>
image_name = 'rgb_24bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99C3A360>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgb_32bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99CA5D00>
image_name = 'rgb_32bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99CA5D00>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
_______________________________________ test_bmp_loading[rgb_4bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99C39F40>
image_name = 'rgb_4bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99C39F40>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
_______________________________________ test_bmp_loading[rgb_8bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99CA5A00>
image_name = 'rgb_8bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99CA5A00>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgba_32bpp.bmp] ______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99CD18E0>
image_name = 'rgba_32bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x0000017F99CD18E0>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
============================================== warnings summary ==============================================
tests\interactive\text\test_caret_color.py:14
  D:\dev\pyglet2\tests\interactive\text\test_caret_color.py:14: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_caret_color.py)
    class TestWindow(window.Window):

tests\interactive\text\test_content_valign.py:26
  D:\dev\pyglet2\tests\interactive\text\test_content_valign.py:26: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_content_valign.py)    class TestWindow(window.Window):

tests\interactive\text\test_html.py:192
  D:\dev\pyglet2\tests\interactive\text\test_html.py:192: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_html.py)
    class TestWindow(pyglet.window.Window):

tests\interactive\text\test_inline_elements.py:70
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements.py:70: PytestCollectionWarning: cannot collect test class 'TestElement' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements.py)
    class TestElement(document.InlineElement):

tests\interactive\text\test_inline_elements.py:92
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements.py:92: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements.py)
    class TestWindow(pyglet.window.Window):

tests\interactive\text\test_inline_elements_style_change.py:42
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements_style_change.py:42: PytestCollectionWarning: cannot collect test class 'TestElement' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements_style_change.py)
    class TestElement(document.InlineElement):

tests\interactive\text\test_inline_elements_style_change.py:67
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements_style_change.py:67: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements_style_change.py)
    class TestWindow(pyglet.window.Window):

tests\interactive\text\test_multiline_wrap.py:32
  D:\dev\pyglet2\tests\interactive\text\test_multiline_wrap.py:32: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_multiline_wrap.py)    class TestWindow(window.Window):

tests\interactive\text\test_plain.py:27
  D:\dev\pyglet2\tests\interactive\text\test_plain.py:27: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_plain.py)
    class TestWindow(window.Window):

tests\interactive\text\test_style.py:168
  D:\dev\pyglet2\tests\interactive\text\test_style.py:168: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_style.py)
    class TestWindow(window.Window):

tests/interactive/image/test_image.py::test_bmp_loading[rgba_32bpp.bmp]
  d:\venvs\py312_p\Lib\site-packages\_pytest\unraisableexception.py:78: PytestUnraisableExceptionWarning: Exception ignored on calling ctypes callback function: <function Win32Window._get_window_proc.<locals>.f at 0x0000017F99C8CCC0>

  Traceback (most recent call last):
    File "D:\dev\pyglet2\pyglet\window\win32\__init__.py", line 703, in f
      def f(hwnd, msg, wParam, lParam):

  KeyboardInterrupt

    warnings.warn(pytest.PytestUnraisableExceptionWarning(msg))

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
========================================== short test summary info ===========================================
FAILED tests/interactive/graphics/test_multitexture.py::test_multitexture - AttributeError: module 'pyglet.gl' has no attribute 'GL_ALPHA_TEST'
FAILED tests/interactive/image/test_image.py::test_checkerboard - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_16bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_1bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_24bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_32bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_4bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_8bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgba_32bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
======================================= 9 failed, 11 warnings in 3.92s =======================================
Traceback (most recent call last):
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\main.py", line 271, in wrap_session
    session.exitstatus = doit(config, session) or 0
                         ^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\main.py", line 325, in _main
    config.hook.pytest_runtestloop(session=session)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 152, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_result.py", line 114, in get_result
    raise exc.with_traceback(exc.__traceback__)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\main.py", line 350, in pytest_runtestloop
    item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 152, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_result.py", line 114, in get_result
    raise exc.with_traceback(exc.__traceback__)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 114, in pytest_runtest_protocol
    runtestprotocol(item, nextitem=nextitem)
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 134, in runtestprotocol
    reports.append(call_and_report(item, "teardown", log, nextitem=nextitem))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 222, in call_and_report
    call = call_runtest_hook(item, when, **kwds)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 261, in call_runtest_hook
    return CallInfo.from_call(
           ^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 341, in from_call
    result: Optional[TResult] = func()
                                ^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 262, in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 152, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_result.py", line 114, in get_result
    raise exc.with_traceback(exc.__traceback__)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 182, in pytest_runtest_teardown
    item.session._setupstate.teardown_exact(nextitem)
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\runner.py", line 526, in teardown_exact
    fin()
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\fixtures.py", line 701, in <lambda>
    subrequest.node.addfinalizer(lambda: fixturedef.finish(request=subrequest))
                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\fixtures.py", line 1031, in finish
    raise exc
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\fixtures.py", line 1024, in finish
    func()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 46, in tear_down
    self.window.close()
  File "D:\dev\pyglet2\pyglet\window\win32\__init__.py", line 299, in close
    super(Win32Window, self).close()
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 658, in close
    self._context.destroy()
  File "D:\dev\pyglet2\pyglet\gl\base.py", line 319, in destroy
    gl._shadow_window.switch_to()
  File "D:\dev\pyglet2\pyglet\window\win32\__init__.py", line 328, in switch_to
    self.context.set_current()
  File "D:\dev\pyglet2\pyglet\gl\win32.py", line 192, in set_current
    wgl.wglMakeCurrent(self.canvas.hdc, self._context)
KeyboardInterrupt

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "d:\venvs\py312_p\Lib\site-packages\pytest\__main__.py", line 5, in <module>
    raise SystemExit(pytest.console_main())
                     ^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\config\__init__.py", line 192, in console_main
    code = main()
           ^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\config\__init__.py", line 169, in main
    ret: Union[ExitCode, int] = config.hook.pytest_cmdline_main(
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 113, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\main.py", line 318, in pytest_cmdline_main
    return wrap_session(config, _main)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\main.py", line 285, in wrap_session
    config.hook.pytest_keyboard_interrupt(excinfo=excinfo)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 113, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "d:\venvs\py312_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\terminal.py", line 891, in pytest_keyboard_interrupt
    self._keyboardinterrupt_memo = excinfo.getrepr(funcargs=True)
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\code.py", line 701, in getrepr
    return fmt.repr_excinfo(self)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\code.py", line 989, in repr_excinfo
    reprtraceback = self.repr_traceback(excinfo_)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\code.py", line 914, in repr_traceback
    self.repr_traceback_entry(entry, excinfo if last == entry else None)
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\code.py", line 852, in repr_traceback_entry
    source = self._getentrysource(entry)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\code.py", line 754, in _getentrysource
    source = entry.getsource(self.astcache)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\code.py", line 262, in getsource
    astnode, _, end = getstatementrange_ast(
                      ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\source.py", line 187, in getstatementrange_ast
    start, end = get_statement_startend2(lineno, astnode)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py312_p\Lib\site-packages\_pytest\_code\source.py", line 159, in get_statement_startend2
    val: Optional[List[ast.stmt]] = getattr(x, name, None)
                                    ^^^^^^^^^^^^^^^^^^^^^^
KeyboardInterrupt
^C
(py312_p) D:\dev\pyglet2>
@ccanepa ccanepa added the bug Something isn't working label Oct 8, 2023
@ccanepa
Copy link
Contributor Author

ccanepa commented Oct 8, 2023

seems the same happens with py 3.11

(py311_p) D:\dev\pyglet2>python -m pytest tests/interactive
============================================ test session starts =============================================
platform win32 -- Python 3.11.4, pytest-7.4.2, pluggy-1.3.0
rootdir: D:\dev\pyglet2
configfile: pytest.ini
plugins: cov-4.1.0
collected 115 items

tests\interactive\graphics\test_multitexture.py
================================================================================
test_multitexture
Verify that multiple textures can be applied to the same object.
--------------------------------------------------------------------------------
F
tests\interactive\image\test_image.py
================================================================================
test_checkerboard
Test that the checkerboard pattern looks correct.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_16bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_1bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_24bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_32bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_4bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgb_8bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_bmp_loading[rgba_32bpp.bmp]
Test loading BMP images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_dds_loading[rgba_dxt1.dds]
Test loading DDS images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F
================================================================================
test_dds_loading[rgba_dxt3.dds]
Test loading DDS images.
--------------------------------------------------------------------------------
Traceback (most recent call last):
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 87, in ask_question
    self.run_event_loop()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 126, in run_event_loop
    pyglet.app.run()
  File "D:\dev\pyglet2\pyglet\app\__init__.py", line 76, in run
    event_loop.run(interval)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 163, in run
    timeout = self.idle()
              ^^^^^^^^^^^
  File "D:\dev\pyglet2\pyglet\app\base.py", line 224, in idle
    self.clock.call_scheduled_functions(dt)
  File "D:\dev\pyglet2\pyglet\clock.py", line 217, in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
  File "D:\dev\pyglet2\pyglet\app\base.py", line 118, in _redraw_windows
    window.dispatch_event('on_draw')
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 667, in dispatch_event
    super().dispatch_event(*args)
  File "D:\dev\pyglet2\pyglet\event.py", line 380, in dispatch_event
    if handler(*args):
       ^^^^^^^^^^^^^^
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 27, in on_draw
    self.draw_checkerboard()
  File "D:\dev\pyglet2\tests\interactive\image\test_image.py", line 36, in draw_checkerboard
    gl.glPushMatrix()
    ^^^^^^^^^^^^^^^
AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
F

================================================== FAILURES ==================================================
_____________________________________________ test_multitexture ______________________________________________

multi_texture_fixture = <tests.interactive.graphics.test_multitexture.MultiTextureFixture object at 0x000001F772080590>
test_data = <tests.base.data.TestDataFixture object at 0x000001F772080410>

    def test_multitexture(multi_texture_fixture, test_data):
            'Verify that multiple textures can be applied to the same object.'
>           w = multi_texture_fixture.create_window(height=400)

tests\interactive\graphics\test_multitexture.py:87:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\graphics\test_multitexture.py:23: in create_window
    self.render()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.graphics.test_multitexture.MultiTextureFixture object at 0x000001F772080590>

    def render(self):
        # Enable blending
        gl.glEnable(gl.GL_BLEND)
        gl.glBlendFunc(gl.GL_SRC_ALPHA, gl.GL_ONE_MINUS_SRC_ALPHA)

        # Enable transparency
>       gl.glEnable(gl.GL_ALPHA_TEST)
E       AttributeError: module 'pyglet.gl' has no attribute 'GL_ALPHA_TEST'

tests\interactive\graphics\test_multitexture.py:32: AttributeError
_____________________________________________ test_checkerboard ______________________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F7720DE5D0>

    def test_checkerboard(image_test):
        """Test that the checkerboard pattern looks correct."""
        image_test.create_window()
>       image_test.ask_question(
                "Do you see a checkboard pattern in two levels of grey?"
                )

tests\interactive\image\test_image.py:160:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F7720DE5D0>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgb_16bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F775B34B50>
image_name = 'rgb_16bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F775B34B50>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
_______________________________________ test_bmp_loading[rgb_1bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F7721A3D10>
image_name = 'rgb_1bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F7721A3D10>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgb_24bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F7721159D0>
image_name = 'rgb_24bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F7721159D0>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgb_32bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F772075E10>
image_name = 'rgb_32bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F772075E10>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
_______________________________________ test_bmp_loading[rgb_4bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F775ACBD10>
image_name = 'rgb_4bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F775ACBD10>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
_______________________________________ test_bmp_loading[rgb_8bpp.bmp] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F772198A90>
image_name = 'rgb_8bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F772198A90>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_bmp_loading[rgba_32bpp.bmp] ______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F77485C890>
image_name = 'rgba_32bpp.bmp'

    @pytest.mark.parametrize('image_name', bmp_images)
    def test_bmp_loading(image_test, image_name):
        """Test loading BMP images."""
        from pyglet.image.codecs.bmp import BMPImageDecoder
>       image_test.test_image_loading(BMPImageDecoder(), image_name)

tests\interactive\image\test_image.py:168:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F77485C890>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_dds_loading[rgba_dxt1.dds] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F77206ED10>
image_name = 'rgba_dxt1.dds'

    @pytest.mark.parametrize('image_name', dds_images)
    def test_dds_loading(image_test, image_name):
        """Test loading DDS images."""
        from pyglet.image.codecs.dds import DDSImageDecoder
>       image_test.test_image_loading(DDSImageDecoder(), image_name)

tests\interactive\image\test_image.py:175:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F77206ED10>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
______________________________________ test_dds_loading[rgba_dxt3.dds] _______________________________________

image_test = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F77204B2D0>
image_name = 'rgba_dxt3.dds'

    @pytest.mark.parametrize('image_name', dds_images)
    def test_dds_loading(image_test, image_name):
        """Test loading DDS images."""
        from pyglet.image.codecs.dds import DDSImageDecoder
>       image_test.test_image_loading(DDSImageDecoder(), image_name)

tests\interactive\image\test_image.py:175:
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
tests\interactive\image\test_image.py:130: in test_image_loading
    self.ask_question(
tests\base\event_loop.py:105: in ask_question
    raise caught_exception
tests\base\event_loop.py:87: in ask_question
    self.run_event_loop()
tests\base\event_loop.py:126: in run_event_loop
    pyglet.app.run()
pyglet\app\__init__.py:76: in run
    event_loop.run(interval)
pyglet\app\base.py:163: in run
    timeout = self.idle()
pyglet\app\base.py:224: in idle
    self.clock.call_scheduled_functions(dt)
pyglet\clock.py:217: in call_scheduled_functions
    item.func(now - item.last_ts, *item.args, **item.kwargs)
pyglet\app\base.py:118: in _redraw_windows
    window.dispatch_event('on_draw')
pyglet\window\__init__.py:667: in dispatch_event
    super().dispatch_event(*args)
pyglet\event.py:380: in dispatch_event
    if handler(*args):
tests\interactive\image\test_image.py:27: in on_draw
    self.draw_checkerboard()
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

self = <tests.interactive.image.test_image.ImageTestFixture object at 0x000001F77204B2D0>

    def draw_checkerboard(self):
        if self.show_checkerboard:
>           gl.glPushMatrix()
E           AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'

tests\interactive\image\test_image.py:36: AttributeError
============================================== warnings summary ==============================================
tests\interactive\text\test_caret_color.py:14
  D:\dev\pyglet2\tests\interactive\text\test_caret_color.py:14: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_caret_color.py)
    class TestWindow(window.Window):

tests\interactive\text\test_content_valign.py:26
  D:\dev\pyglet2\tests\interactive\text\test_content_valign.py:26: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_content_valign.py)
    class TestWindow(window.Window):

tests\interactive\text\test_html.py:192
  D:\dev\pyglet2\tests\interactive\text\test_html.py:192: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_html.py)
    class TestWindow(pyglet.window.Window):

tests\interactive\text\test_inline_elements.py:70
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements.py:70: PytestCollectionWarning: cannot collect test class 'TestElement' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements.py)
    class TestElement(document.InlineElement):

tests\interactive\text\test_inline_elements.py:92
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements.py:92: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements.py)
    class TestWindow(pyglet.window.Window):

tests\interactive\text\test_inline_elements_style_change.py:42
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements_style_change.py:42: PytestCollectionWarning: cannot collect test class 'TestElement' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements_style_change.py)
    class TestElement(document.InlineElement):

tests\interactive\text\test_inline_elements_style_change.py:67
  D:\dev\pyglet2\tests\interactive\text\test_inline_elements_style_change.py:67: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_inline_elements_style_change.py)
    class TestWindow(pyglet.window.Window):

tests\interactive\text\test_multiline_wrap.py:32
  D:\dev\pyglet2\tests\interactive\text\test_multiline_wrap.py:32: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_multiline_wrap.py)
    class TestWindow(window.Window):

tests\interactive\text\test_plain.py:27
  D:\dev\pyglet2\tests\interactive\text\test_plain.py:27: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_plain.py)
    class TestWindow(window.Window):

tests\interactive\text\test_style.py:168
  D:\dev\pyglet2\tests\interactive\text\test_style.py:168: PytestCollectionWarning: cannot collect test class 'TestWindow' because it has a __init__ constructor (from: tests/interactive/text/test_style.py)
    class TestWindow(window.Window):

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
========================================== short test summary info ===========================================
FAILED tests/interactive/graphics/test_multitexture.py::test_multitexture - AttributeError: module 'pyglet.gl' has no attribute 'GL_ALPHA_TEST'
FAILED tests/interactive/image/test_image.py::test_checkerboard - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_16bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_1bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_24bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_32bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_4bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgb_8bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_bmp_loading[rgba_32bpp.bmp] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_dds_loading[rgba_dxt1.dds] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
FAILED tests/interactive/image/test_image.py::test_dds_loading[rgba_dxt3.dds] - AttributeError: module 'pyglet.gl' has no attribute 'glPushMatrix'
====================================== 11 failed, 10 warnings in 8.19s =======================================
Traceback (most recent call last):
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\main.py", line 271, in wrap_session
    session.exitstatus = doit(config, session) or 0
                         ^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\main.py", line 325, in _main
    config.hook.pytest_runtestloop(session=session)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 152, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_result.py", line 114, in get_result
    raise exc.with_traceback(exc.__traceback__)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\main.py", line 350, in pytest_runtestloop
    item.config.hook.pytest_runtest_protocol(item=item, nextitem=nextitem)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 152, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_result.py", line 114, in get_result
    raise exc.with_traceback(exc.__traceback__)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 114, in pytest_runtest_protocol
    runtestprotocol(item, nextitem=nextitem)
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 134, in runtestprotocol
    reports.append(call_and_report(item, "teardown", log, nextitem=nextitem))
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 222, in call_and_report
    call = call_runtest_hook(item, when, **kwds)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 261, in call_runtest_hook
    return CallInfo.from_call(
           ^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 341, in from_call
    result: Optional[TResult] = func()
                                ^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 262, in <lambda>
    lambda: ihook(item=item, **kwds), when=when, reraise=reraise
            ^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 152, in _multicall
    return outcome.get_result()
           ^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_result.py", line 114, in get_result
    raise exc.with_traceback(exc.__traceback__)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 182, in pytest_runtest_teardown
    item.session._setupstate.teardown_exact(nextitem)
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\runner.py", line 526, in teardown_exact
    fin()
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\fixtures.py", line 701, in <lambda>
    subrequest.node.addfinalizer(lambda: fixturedef.finish(request=subrequest))
                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\fixtures.py", line 1031, in finish
    raise exc
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\fixtures.py", line 1024, in finish
    func()
  File "D:\dev\pyglet2\tests\base\event_loop.py", line 46, in tear_down
    self.window.close()
  File "D:\dev\pyglet2\pyglet\window\win32\__init__.py", line 299, in close
    super(Win32Window, self).close()
  File "D:\dev\pyglet2\pyglet\window\__init__.py", line 658, in close
    self._context.destroy()
  File "D:\dev\pyglet2\pyglet\gl\base.py", line 311, in destroy
    self.detach()
  File "D:\dev\pyglet2\pyglet\gl\win32.py", line 197, in detach
    wgl.wglDeleteContext(self._context)
KeyboardInterrupt

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "d:\venvs\py311_p\Lib\site-packages\pytest\__main__.py", line 5, in <module>
    raise SystemExit(pytest.console_main())
                     ^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\config\__init__.py", line 192, in console_main
    code = main()
           ^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\config\__init__.py", line 169, in main
    ret: Union[ExitCode, int] = config.hook.pytest_cmdline_main(
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 113, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\main.py", line 318, in pytest_cmdline_main
    return wrap_session(config, _main)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\main.py", line 285, in wrap_session
    config.hook.pytest_keyboard_interrupt(excinfo=excinfo)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_hooks.py", line 493, in __call__
    return self._hookexec(self.name, self._hookimpls, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_manager.py", line 115, in _hookexec
    return self._inner_hookexec(hook_name, methods, kwargs, firstresult)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 113, in _multicall
    raise exception.with_traceback(exception.__traceback__)
  File "d:\venvs\py311_p\Lib\site-packages\pluggy\_callers.py", line 77, in _multicall
    res = hook_impl.function(*args)
          ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\terminal.py", line 891, in pytest_keyboard_interrupt
    self._keyboardinterrupt_memo = excinfo.getrepr(funcargs=True)
                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\code.py", line 701, in getrepr
    return fmt.repr_excinfo(self)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\code.py", line 989, in repr_excinfo
    reprtraceback = self.repr_traceback(excinfo_)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\code.py", line 913, in repr_traceback
    entries = [
              ^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\code.py", line 914, in <listcomp>
    self.repr_traceback_entry(entry, excinfo if last == entry else None)
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\code.py", line 852, in repr_traceback_entry
    source = self._getentrysource(entry)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\code.py", line 754, in _getentrysource
    source = entry.getsource(self.astcache)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\code.py", line 262, in getsource
    astnode, _, end = getstatementrange_ast(
                      ^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\source.py", line 187, in getstatementrange_ast
    start, end = get_statement_startend2(lineno, astnode)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "d:\venvs\py311_p\Lib\site-packages\_pytest\_code\source.py", line 150, in get_statement_startend2
    for x in ast.walk(node):
  File "C:\Python311\Lib\ast.py", line 390, in walk
    todo.extend(iter_child_nodes(node))
KeyboardInterrupt
^C

@ccanepa
Copy link
Contributor Author

ccanepa commented Oct 8, 2023

same with py 38

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant