205 lines
6.3 KiB
Python
205 lines
6.3 KiB
Python
import sys
|
|
import unittest
|
|
from ctypes import c_char_p, c_void_p, cast
|
|
from .. import SDL_Init, SDL_Quit, SDL_QuitSubSystem, SDL_INIT_EVERYTHING
|
|
from .. import events
|
|
|
|
|
|
class SDLEventsTest(unittest.TestCase):
|
|
__tags__ = ["sdl"]
|
|
|
|
def setUp(self):
|
|
SDL_Init(SDL_INIT_EVERYTHING)
|
|
|
|
def tearDown(self):
|
|
SDL_QuitSubSystem(SDL_INIT_EVERYTHING)
|
|
SDL_Quit()
|
|
|
|
def test_SDL_AudioDeviceEvent(self):
|
|
event = events.SDL_AudioDeviceEvent()
|
|
self.assertIsInstance(event, events.SDL_AudioDeviceEvent)
|
|
|
|
def test_SDL_WindowEvent(self):
|
|
event = events.SDL_WindowEvent()
|
|
self.assertIsInstance(event, events.SDL_WindowEvent)
|
|
|
|
def test_SDL_KeyboardEvent(self):
|
|
event = events.SDL_KeyboardEvent()
|
|
self.assertIsInstance(event, events.SDL_KeyboardEvent)
|
|
|
|
def test_SDL_TextEditingEvent(self):
|
|
event = events.SDL_TextEditingEvent()
|
|
self.assertIsInstance(event, events.SDL_TextEditingEvent)
|
|
|
|
def test_SDL_TextInputEvent(self):
|
|
event = events.SDL_TextInputEvent()
|
|
self.assertIsInstance(event, events.SDL_TextInputEvent)
|
|
|
|
def test_SDL_MouseMotionEvent(self):
|
|
event = events.SDL_MouseMotionEvent()
|
|
self.assertIsInstance(event, events.SDL_MouseMotionEvent)
|
|
|
|
def test_SDL_MouseButtonEvent(self):
|
|
event = events.SDL_MouseButtonEvent()
|
|
self.assertIsInstance(event, events.SDL_MouseButtonEvent)
|
|
|
|
def test_SDL_MouseWheelEvent(self):
|
|
event = events.SDL_MouseWheelEvent()
|
|
self.assertIsInstance(event, events.SDL_MouseWheelEvent)
|
|
|
|
def test_SDL_JoyAxisEvent(self):
|
|
event = events.SDL_JoyAxisEvent()
|
|
self.assertIsInstance(event, events.SDL_JoyAxisEvent)
|
|
|
|
def test_SDL_JoyBallEvent(self):
|
|
event = events.SDL_JoyBallEvent()
|
|
self.assertIsInstance(event, events.SDL_JoyBallEvent)
|
|
|
|
def test_SDL_JoyHatEvent(self):
|
|
event = events.SDL_JoyHatEvent()
|
|
self.assertIsInstance(event, events.SDL_JoyHatEvent)
|
|
|
|
def test_SDL_JoyButtonEvent(self):
|
|
event = events.SDL_JoyButtonEvent()
|
|
self.assertIsInstance(event, events.SDL_JoyButtonEvent)
|
|
|
|
def test_SDL_TouchFingerEvent(self):
|
|
event = events.SDL_TouchFingerEvent()
|
|
self.assertIsInstance(event, events.SDL_TouchFingerEvent)
|
|
|
|
def test_SDL_MultiGestureEvent(self):
|
|
event = events.SDL_MultiGestureEvent()
|
|
self.assertIsInstance(event, events.SDL_MultiGestureEvent)
|
|
|
|
def test_SDL_DollarGestureEvent(self):
|
|
event = events.SDL_DollarGestureEvent()
|
|
self.assertIsInstance(event, events.SDL_DollarGestureEvent)
|
|
|
|
def test_SDL_DropEvent(self):
|
|
event = events.SDL_DropEvent()
|
|
self.assertIsInstance(event, events.SDL_DropEvent)
|
|
|
|
def test_SDL_QuitEvent(self):
|
|
event = events.SDL_QuitEvent()
|
|
self.assertIsInstance(event, events.SDL_QuitEvent)
|
|
|
|
def test_SDL_UserEvent(self):
|
|
event = events.SDL_UserEvent()
|
|
self.assertIsInstance(event, events.SDL_UserEvent)
|
|
|
|
def test_SDL_SysWMEvent(self):
|
|
event = events.SDL_SysWMEvent()
|
|
self.assertIsInstance(event, events.SDL_SysWMEvent)
|
|
|
|
def test_SDL_Event(self):
|
|
event = events.SDL_Event()
|
|
self.assertIsInstance(event, events.SDL_Event)
|
|
|
|
def test_SDL_AddDelEventWatch(self):
|
|
eventwatch = []
|
|
|
|
def watch(data, event):
|
|
eventwatch.append((event.contents, data,))
|
|
return 0
|
|
efilter = events.SDL_EventFilter(watch)
|
|
udata = c_char_p(b"Something random")
|
|
events.SDL_AddEventWatch(efilter, cast(udata, c_void_p))
|
|
ev = events.SDL_Event()
|
|
ev.type = events.SDL_USEREVENT
|
|
ev.user = events.SDL_UserEvent()
|
|
events.SDL_PushEvent(ev)
|
|
self.assertEqual(len(eventwatch), 1)
|
|
# TODO: x
|
|
# self.assertEqual(eventwatch[0][1], udata)
|
|
|
|
events.SDL_DelEventWatch(efilter, udata)
|
|
ev = events.SDL_Event()
|
|
events.SDL_PushEvent(ev)
|
|
self.assertEqual(len(eventwatch), 1)
|
|
# TODO: x
|
|
# self.assertEqual(eventwatch[0][1], udata)
|
|
|
|
def test_SDL_EventState(self):
|
|
pass
|
|
# state = events.SDL_EventState(events.SDL_USEREVENT, events.SDL_QUERY)
|
|
# self.assertEqual(state, events.SDL_ENABLE)
|
|
# state = events.SDL_EventState(events.SDL_USEREVENT,events.SDL_IGNORE)
|
|
# self.assertEqual(state, events.SDL_ENABLE)
|
|
# state = events.SDL_EventState(events.SDL_USEREVENT, events.SDL_QUERY)
|
|
# self.assertEqual(state, events.SDL_IGNORE)
|
|
# state = events.SDL_EventState(events.SDL_USEREVENT,events.SDL_ENABLE)
|
|
# self.assertEqual(state, events.SDL_IGNORE)
|
|
# state = events.SDL_EventState(events.SDL_USEREVENT, events.SDL_QUERY)
|
|
# self.assertEqual(state, events.SDL_ENABLE)
|
|
|
|
# self.assertRaises(TypeError, events.SDL_EventState, None, None)
|
|
|
|
# ev = events.SDL_Event()
|
|
# ev.type = events.SDL_USEREVENT
|
|
# ev.user = events.SDL_UserEvent()
|
|
# events.SDL_PushEvent(ev)
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_GetEventState(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_FilterEvents(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_FlushEvent(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_FlushEvents(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_GetSetEventFilter(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_HasEvent(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_HasEvents(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_PeepEvents(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_PollEvent(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_PumpEvents(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_PushEvent(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_RegisterEvents(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_WaitEvent(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_WaitEventTimeout(self):
|
|
pass
|
|
|
|
@unittest.skip("not implemented")
|
|
def test_SDL_QuitRequested(self):
|
|
pass
|
|
|
|
|
|
if __name__ == '__main__':
|
|
sys.exit(unittest.main())
|