def test_example_other_calculator(self) -> None: """ Test calculator example. """ app = calculator.main(test=True) app.process_events( PygameEventUtils.keydown([ pygame.K_1, pygame.K_2, pygame.K_3, pygame.K_4, pygame.K_5, pygame.K_PLUS ])) self.assertEqual(app.prev, '12345') self.assertEqual(app.op, '+') app.process_events( PygameEventUtils.keydown( [pygame.K_6, pygame.K_7, pygame.K_8, pygame.K_9, pygame.K_0])) self.assertEqual(app.curr, '67890') app.process_events(PygameEventUtils.keydown(pygame.K_EQUALS)) self.assertEqual(app.op, '') self.assertEqual(app.curr, '80235') self.assertEqual(app.prev, '') app.process_events(PygameEventUtils.keydown([pygame.K_x, pygame.K_2])) self.assertEqual(app.op, 'x') self.assertEqual(app.curr, '2') self.assertEqual(app.prev, '80235') app.process_events(PygameEventUtils.keydown([pygame.K_x])) self.assertEqual(app.op, 'x') self.assertEqual(app.curr, '') self.assertEqual(app.prev, '160470') app.process_events( PygameEventUtils.keydown([pygame.K_PLUS, pygame.K_3, pygame.K_0])) self.assertEqual(app.op, '+') self.assertEqual(app.curr, '30') self.assertEqual(app.prev, '160470') app.process_events(PygameEventUtils.keydown(pygame.K_EQUALS)) self.assertEqual(app.op, '') self.assertEqual(app.curr, '160500') self.assertEqual(app.prev, '') app.process_events( PygameEventUtils.keydown( [pygame.K_SLASH, pygame.K_5, pygame.K_MINUS])) self.assertEqual(app.op, '-') self.assertEqual(app.curr, '') self.assertEqual(app.prev, '32100') app.process_events( PygameEventUtils.keydown([ pygame.K_3, pygame.K_2, pygame.K_1, pygame.K_0, pygame.K_EQUALS ])) self.assertEqual(app.op, '') self.assertEqual(app.curr, '28890') self.assertEqual(app.prev, '') app.process_events( PygameEventUtils.keydown([pygame.K_9, pygame.K_BACKSPACE])) self.assertEqual(app.op, '') self.assertEqual(app.curr, '') self.assertEqual(app.prev, '') test_reset_surface()
def test_example_other_calculator(self) -> None: """ Test calculator example. """ app = calculator.main(test=True) # Process events app.process_events( PygameEventUtils.keydown([ pygame.K_1, pygame.K_2, pygame.K_3, pygame.K_4, pygame.K_5, pygame.K_PLUS ])) self.assertEqual(app.prev, '12345') self.assertEqual(app.op, '+') app.process_events( PygameEventUtils.keydown( [pygame.K_6, pygame.K_7, pygame.K_8, pygame.K_9, pygame.K_0])) self.assertEqual(app.curr, '67890') app.process_events(PygameEventUtils.keydown(pygame.K_EQUALS)) self.assertEqual(app.op, '') self.assertEqual(app.curr, '80235') self.assertEqual(app.prev, '') app.process_events(PygameEventUtils.keydown([pygame.K_x, pygame.K_2])) self.assertEqual(app.op, 'x') self.assertEqual(app.curr, '2') self.assertEqual(app.prev, '80235') app.process_events(PygameEventUtils.keydown([pygame.K_x])) self.assertEqual(app.op, 'x') self.assertEqual(app.curr, '') self.assertEqual(app.prev, '160470') app.process_events( PygameEventUtils.keydown([pygame.K_PLUS, pygame.K_3, pygame.K_0])) self.assertEqual(app.op, '+') self.assertEqual(app.curr, '30') self.assertEqual(app.prev, '160470') app.process_events(PygameEventUtils.keydown(pygame.K_EQUALS)) self.assertEqual(app.op, '') self.assertEqual(app.curr, '160500') self.assertEqual(app.prev, '') app.process_events( PygameEventUtils.keydown( [pygame.K_SLASH, pygame.K_5, pygame.K_MINUS])) self.assertEqual(app.op, '-') self.assertEqual(app.curr, '') self.assertEqual(app.prev, '32100') app.process_events( PygameEventUtils.keydown([ pygame.K_3, pygame.K_2, pygame.K_1, pygame.K_0, pygame.K_EQUALS ])) self.assertEqual(app.op, '') self.assertEqual(app.curr, '28890') self.assertEqual(app.prev, '') app.process_events( PygameEventUtils.keydown([pygame.K_9, pygame.K_BACKSPACE])) self.assertEqual(app.op, '') self.assertEqual(app.curr, '') self.assertEqual(app.prev, '') # Test methods self.assertRaises(ValueError, lambda: app._format('n')) self.assertEqual(app._format('1.2'), '1') self.assertEqual(app._format('2.0'), '2') # Test selection app.menu._test_print_widgets() b1 = app.menu.get_widgets()[4] b1d = b1.get_decorator() lay = b1.get_attribute('on_layer') self.assertFalse(b1d.is_enabled(lay)) b1.select() self.assertTrue(b1d.is_enabled(lay)) b1.select(False) self.assertFalse(b1d.is_enabled(lay))