@Test public void testSetDown() { key.setDown(true); assertTrue(key.isDown()); key.setDown(false); assertFalse(key.isDown()); }
@Test public void testToggle() { key.toggle(true); assertTrue(key.isDown()); key.toggle(false); assertFalse(key.isDown()); }
private void toggle(KeyEvent ke, boolean pressed) { InputKey key = null; // ??????? check this switch (ke.getKeyCode()) { case KeyEvent.VK_NUMPAD8: case KeyEvent.VK_W: case KeyEvent.VK_UP: key = InputKey.UP; break; case KeyEvent.VK_NUMPAD2: case KeyEvent.VK_S: case KeyEvent.VK_DOWN: key = InputKey.DOWN; break; case KeyEvent.VK_NUMPAD4: case KeyEvent.VK_A: case KeyEvent.VK_LEFT: key = InputKey.LEFT; break; case KeyEvent.VK_NUMPAD6: case KeyEvent.VK_D: case KeyEvent.VK_RIGHT: key = InputKey.RIGHT; break; case KeyEvent.VK_TAB: case KeyEvent.VK_ALT: case KeyEvent.VK_ALT_GRAPH: case KeyEvent.VK_ENTER: case KeyEvent.VK_X: key = InputKey.MENU; break; case KeyEvent.VK_NUMPAD0: case KeyEvent.VK_SPACE: case KeyEvent.VK_CONTROL: case KeyEvent.VK_INSERT: case KeyEvent.VK_C: key = InputKey.ATTACK; break; case KeyEvent.VK_ESCAPE: key = InputKey.QUIT; break; } if (key == null) { throw new IllegalArgumentException("Unsupported key code " + ke.getKeyCode()); } key.toggle(pressed); }
@Test public void testClicking() { key.toggle(true); assertFalse(key.isClicked()); key.tick(); assertTrue(key.isClicked()); key.tick(); assertFalse(key.isClicked()); key.toggle(false); assertFalse(key.isClicked()); key.toggle(true); assertFalse(key.isClicked()); key.tick(); assertTrue(key.isClicked()); key.tick(); assertFalse(key.isClicked()); }
@Test public void testInitialState() { assertFalse(key.isDown()); assertFalse(key.isClicked()); }
@Before public void setUp() { key = InputKey.UP; key.reset(); }
/** Sends a tick to every key. */ public void tick() { for (InputKey key : EnumSet.allOf(InputKey.class)) { key.tick(); } }
/** Releases all input keys. */ public void releaseAll() { for (InputKey key : EnumSet.allOf(InputKey.class)) { key.setDown(false); } }