class TestEvent: def hel(self): self.result += "Hel" def lo(self): self.result += "lo" def world(self): self.result += "World" def space(self): self.result += " " def setup(self): self.egen = EventGenerator() keymap = { pygame.K_a: self.hel, pygame.K_b: self.lo, pygame.K_c: self.world, pygame.K_d: self.space } self.elis = EventListener(keymap) self.egen.add_listener(self.elis) self.updated = 0 self.result = "" def update(self): """Counts how many times the method was called""" # callback function called from EventGenerator() self.updated += 1 def test_event_generator(self): """Generate some key events and check whether they arrive.""" self.egen.add_scripted_keys('acb') self.egen.add_scripted_event(QUIT_EVENT) self.egen.event_loop() assert self.result == "HelWorldlo" def test_callback(self): """Pass scripted keys as a string.""" self.egen.add_callback(self) self.egen.add_scripted_keys('abdc') self.egen.add_scripted_event(QUIT_EVENT) self.egen.event_loop() assert self.result == "Hello World" assert self.updated == 5 def test_scripted_repeat(self): """Pass scripted keys as a string.""" self.egen.add_callback(self) self.egen.add_scripted_keys('aaaa') self.egen.add_scripted_event(QUIT_EVENT) self.egen.event_loop() assert self.updated == 5
class EventTests(TestCase): def hel(self): self.result += "Hel" def lo(self): self.result += "lo" def world(self): self.result += "World" def space(self): self.result += " " def setUp(self): self.egen = EventGenerator() keymap = { 'a': self.hel, 'b': self.lo, 'c': self.world, 'd': self.space } self.elis = EventListener(keymap) self.egen.add_listener(self.elis) self.updated = 0 self.result = "" def update(self): """Counts how many times the method was called""" # callback function called from EventGenerator() self.updated += 1 def test_event_generator(self): """Generate some key events and check whether they arrive.""" self.egen.add_scripted_keys('acb') self.egen.add_scripted_event(QUIT_EVENT) self.egen.event_loop() self.assertEqual(self.result, "HelWorldlo") def test_callback(self): """Pass scripted keys as a string.""" self.egen.add_callback(self) self.egen.add_scripted_keys('abdc') self.egen.add_scripted_event(QUIT_EVENT) self.egen.event_loop() self.assertEqual(self.result, "Hello World") self.assertEqual(self.updated, 5) def test_scripted_repeat(self): """Pass scripted keys as a string.""" self.egen.add_callback(self) self.egen.add_scripted_keys('aaaa') self.egen.add_scripted_event(QUIT_EVENT) self.egen.event_loop() self.assertEqual(self.updated, 5)