14
0
forked from pool/python-PySDL2

- Add fix-tests.patch to fix the test run in the rpmbuild container without

access to /dev/input.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-PySDL2?expand=0&rev=22
This commit is contained in:
2022-11-02 12:02:41 +00:00
committed by Git OBS Bridge
parent cedae050dd
commit c71d14fbbf
3 changed files with 114 additions and 10 deletions

105
fix-tests.patch Normal file
View File

@@ -0,0 +1,105 @@
Index: PySDL2-0.9.14/sdl2/test/conftest.py
===================================================================
--- PySDL2-0.9.14.orig/sdl2/test/conftest.py
+++ PySDL2-0.9.14/sdl2/test/conftest.py
@@ -13,7 +13,8 @@ SKIP_ANNOYING = os.getenv("PYSDL2_ALL_TE
def with_sdl():
sdl2.SDL_ClearError()
ret = sdl2.SDL_Init(sdl2.SDL_INIT_VIDEO | sdl2.SDL_INIT_TIMER)
- assert sdl2.SDL_GetError() == b""
+ # Ignore errors like Unable to open /dev/input/...
+ # assert sdl2.SDL_GetError() == b""
assert ret == 0
yield
sdl2.SDL_Quit()
Index: PySDL2-0.9.14/sdl2/test/audio_test.py
===================================================================
--- PySDL2-0.9.14.orig/sdl2/test/audio_test.py
+++ PySDL2-0.9.14/sdl2/test/audio_test.py
@@ -23,7 +23,8 @@ def with_sdl_audio():
sdl2.SDL_Quit()
sdl2.SDL_ClearError()
ret = sdl2.SDL_Init(sdl2.SDL_INIT_VIDEO | sdl2.SDL_INIT_AUDIO)
- assert sdl2.SDL_GetError() == b""
+ # Ignore errors like Unable to open /dev/input/...
+ # assert sdl2.SDL_GetError() == b""
assert ret == 0
yield
sdl2.SDL_Quit()
Index: PySDL2-0.9.14/sdl2/test/hints_test.py
===================================================================
--- PySDL2-0.9.14.orig/sdl2/test/hints_test.py
+++ PySDL2-0.9.14/sdl2/test/hints_test.py
@@ -9,7 +9,8 @@ from sdl2.stdinc import SDL_TRUE, SDL_FA
def with_sdl():
sdl2.SDL_ClearError()
ret = sdl2.SDL_Init(sdl2.SDL_INIT_VIDEO)
- assert sdl2.SDL_GetError() == b""
+ # Ignore errors like Unable to open /dev/input/...
+ # assert sdl2.SDL_GetError() == b""
assert ret == 0
yield
sdl2.SDL_Quit()
Index: PySDL2-0.9.14/sdl2/test/sdlmixer_test.py
===================================================================
--- PySDL2-0.9.14.orig/sdl2/test/sdlmixer_test.py
+++ PySDL2-0.9.14/sdl2/test/sdlmixer_test.py
@@ -32,7 +32,8 @@ def with_sdl_mixer():
# Initialize SDL2 with video and audio subsystems
sdl2.SDL_ClearError()
ret = sdl2.SDL_Init(sdl2.SDL_INIT_VIDEO | sdl2.SDL_INIT_AUDIO)
- assert sdl2.SDL_GetError() == b""
+ # Ignore errors like Unable to open /dev/input/...
+ # assert sdl2.SDL_GetError() == b""
assert ret == 0
# Initialize SDL_mixer and open an audio device
flags = (
Index: PySDL2-0.9.14/sdl2/test/touch_test.py
===================================================================
--- PySDL2-0.9.14.orig/sdl2/test/touch_test.py
+++ PySDL2-0.9.14/sdl2/test/touch_test.py
@@ -18,7 +18,8 @@ def with_sdl():
sdl2.SDL_SetHint(sdl2.SDL_HINT_MOUSE_TOUCH_EVENTS, b"1")
sdl2.SDL_ClearError()
ret = sdl2.SDL_Init(sdl2.SDL_INIT_VIDEO)
- assert sdl2.SDL_GetError() == b""
+ # Ignore errors like Unable to open /dev/input/...
+ # assert sdl2.SDL_GetError() == b""
assert ret == 0
yield
sdl2.SDL_Quit()
@@ -86,4 +87,4 @@ def test_SDL_GetTouchFinger():
assert finger.contents.id >= 0
assert 0 <= finger.contents.x <= 1
assert 0 <= finger.contents.y <= 1
-
\ No newline at end of file
+
Index: PySDL2-0.9.14/sdl2/test/sdl_test.py
===================================================================
--- PySDL2-0.9.14.orig/sdl2/test/sdl_test.py
+++ PySDL2-0.9.14/sdl2/test/sdl_test.py
@@ -40,7 +40,8 @@ def test_SDL_Init():
def test_SDL_InitSubSystem():
sdl2.SDL_ClearError()
ret = sdl2.SDL_Init(SDL_INIT_VIDEO | SDL_INIT_AUDIO)
- assert sdl2.SDL_GetError() == b""
+ # Ignore errors like Unable to open /dev/input/...
+ # assert sdl2.SDL_GetError() == b""
assert ret == 0
# Test initializing an additional subsystem
assert sdl2.SDL_WasInit(0) & SDL_INIT_TIMER != SDL_INIT_TIMER
Index: PySDL2-0.9.14/sdl2/test/video_test.py
===================================================================
--- PySDL2-0.9.14.orig/sdl2/test/video_test.py
+++ PySDL2-0.9.14/sdl2/test/video_test.py
@@ -194,7 +194,8 @@ def test_SDL_VideoInitQuit():
# Test with default driver
assert sdl2.SDL_WasInit(0) & sdl2.SDL_INIT_VIDEO != sdl2.SDL_INIT_VIDEO
ret = sdl2.SDL_VideoInit(None)
- assert sdl2.SDL_GetError() == b""
+ # Ignore errors like Unable to open /dev/input/...
+ # assert sdl2.SDL_GetError() == b""
assert ret == 0
assert sdl2.SDL_GetCurrentVideoDriver() # If initialized, should be string
sdl2.SDL_VideoQuit()

View File

@@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Nov 2 11:58:38 UTC 2022 - Daniel Garcia <daniel.garcia@suse.com>
- Add fix-tests.patch to fix the test run in the rpmbuild container without
access to /dev/input.
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Nov 2 06:56:40 UTC 2022 - munix9@googlemail.com Wed Nov 2 06:56:40 UTC 2022 - munix9@googlemail.com

View File

@@ -25,6 +25,8 @@ Summary: Python ctypes wrapper around SDL2
License: SUSE-Public-Domain License: SUSE-Public-Domain
URL: https://github.com/py-sdl/py-sdl2 URL: https://github.com/py-sdl/py-sdl2
Source: https://files.pythonhosted.org/packages/source/P/PySDL2/PySDL2-%{version}.tar.gz Source: https://files.pythonhosted.org/packages/source/P/PySDL2/PySDL2-%{version}.tar.gz
# PATCH-FIX-OPENSUSE fix-tests.patch to make test work in chroot env without access to /dev/input
Patch0: fix-tests.patch
BuildRequires: %{python_module pip} BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools} BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel} BuildRequires: %{python_module wheel}
@@ -68,21 +70,12 @@ sed -i 's/\r$//' AUTHORS.txt COPYING.txt README.md
%python_expand %fdupes %{buildroot}%{$python_sitelib} %python_expand %fdupes %{buildroot}%{$python_sitelib}
%check %check
#############################################
### Launch a virtual framebuffer X server ###
### (pytest-xvfb is not enough) ###
#############################################
export DISPLAY=%{X_display}
Xvfb %{X_display} >& Xvfb.log &
trap "kill $! || true" EXIT
sleep 10
export SDL_VIDEODRIVER=dummy export SDL_VIDEODRIVER=dummy
export SDL_AUDIODRIVER=dummy export SDL_AUDIODRIVER=dummy
export SDL_RENDER_DRIVER=software export SDL_RENDER_DRIVER=software
export PYTHONFAULTHANDLER=1 export PYTHONFAULTHANDLER=1
%pytest -rfEs || : %pytest -rfEs
%files %{python_files} %files %{python_files}
%license COPYING.txt %license COPYING.txt