treasurehunting2/PySDL2-0.9.5/sdl2/test/syswm_test.py
2017-05-13 11:00:53 +02:00

40 lines
1.3 KiB
Python

import sys
import unittest
import ctypes
from ..stdinc import SDL_TRUE
from .. import video, syswm, version
class SDLSysWMTest(unittest.TestCase):
__tags__ = ["sdl"]
def setUp(self):
video.SDL_VideoInit(None)
def tearDown(self):
video.SDL_VideoQuit()
def test_SDL_GetWindowWMInfo(self):
window = video.SDL_CreateWindow(b"Test", 10, 10, 10, 10,
video.SDL_WINDOW_HIDDEN)
wminfo = syswm.SDL_SysWMinfo()
version.SDL_VERSION(wminfo.version)
ret = syswm.SDL_GetWindowWMInfo(window, ctypes.byref(wminfo))
self.assertEqual(ret, SDL_TRUE)
if sys.platform in ("win32", "cygwin"):
self.assertEqual(wminfo.subsystem, syswm.SDL_SYSWM_WINDOWS)
elif sys.platform.startswith("linux"):
self.assertIn(wminfo.subsystem,
(syswm.SDL_SYSWM_X11, syswm.SDL_SYSWM_DIRECTFB))
elif sys.platform.startswith("freebsd"):
self.assertIn(wminfo.subsystem,
(syswm.SDL_SYSWM_X11, syswm.SDL_SYSWM_DIRECTFB))
elif sys.platform.startswith("darwin"):
self.assertEqual(wminfo.subsystem, syswm.SDL_SYSWM_COCOA)
video.SDL_DestroyWindow(window)
# TODO: not sure, what to test here specifically
if __name__ == '__main__':
sys.exit(unittest.main())