Wed, 26 Aug 2020 19:09:07 +0200
fixes wrong call of assertEquals()
universe@20 | 1 | package de.uapcore.sudoku; |
universe@20 | 2 | |
universe@20 | 3 | import org.junit.jupiter.api.Test; |
universe@20 | 4 | |
universe@20 | 5 | import javax.swing.*; |
universe@20 | 6 | |
universe@20 | 7 | import static org.junit.jupiter.api.Assertions.assertEquals; |
universe@20 | 8 | import static org.junit.jupiter.api.Assertions.assertNull; |
universe@20 | 9 | |
universe@20 | 10 | class MainMenuTest { |
universe@20 | 11 | |
universe@20 | 12 | private final ActionHandler actionHandler = new ActionHandler(new Field()); |
universe@20 | 13 | |
universe@20 | 14 | private void testListeners(JMenuItem m) { |
universe@20 | 15 | final var listeners = m.getActionListeners(); |
universe@20 | 16 | assertEquals(1, listeners.length); |
universe@20 | 17 | assertEquals(actionHandler, listeners[0]); |
universe@20 | 18 | } |
universe@20 | 19 | |
universe@20 | 20 | @Test |
universe@20 | 21 | void testStructure() { |
universe@20 | 22 | final var menu = new MainMenu(actionHandler); |
universe@20 | 23 | |
universe@20 | 24 | assertEquals(2, menu.getMenuCount()); |
universe@20 | 25 | |
universe@20 | 26 | final var datei = menu.getMenu(0); |
universe@20 | 27 | assertEquals('D', datei.getMnemonic()); |
universe@20 | 28 | assertEquals(9, datei.getItemCount()); |
universe@20 | 29 | { |
universe@20 | 30 | final var item = datei.getItem(0); |
universe@20 | 31 | assertEquals("Neu", item.getText()); |
universe@20 | 32 | assertEquals('N', item.getMnemonic()); |
universe@20 | 33 | assertEquals(1, item.getRegisteredKeyStrokes().length); |
universe@20 | 34 | assertEquals(KeyStroke.getKeyStroke("control N"), item.getRegisteredKeyStrokes()[0]); |
universe@20 | 35 | testListeners(item); |
universe@20 | 36 | } |
universe@20 | 37 | { |
universe@20 | 38 | final var item = datei.getItem(1); |
universe@20 | 39 | assertEquals("Öffnen", item.getText()); |
universe@20 | 40 | assertEquals('F', item.getMnemonic()); |
universe@20 | 41 | assertEquals(1, item.getRegisteredKeyStrokes().length); |
universe@20 | 42 | assertEquals(KeyStroke.getKeyStroke("control O"), item.getRegisteredKeyStrokes()[0]); |
universe@20 | 43 | testListeners(item); |
universe@20 | 44 | } |
universe@20 | 45 | { |
universe@20 | 46 | final var item = datei.getItem(2); |
universe@20 | 47 | assertEquals("Speichern", item.getText()); |
universe@20 | 48 | assertEquals('S', item.getMnemonic()); |
universe@20 | 49 | assertEquals(1, item.getRegisteredKeyStrokes().length); |
universe@20 | 50 | assertEquals(KeyStroke.getKeyStroke("control S"), item.getRegisteredKeyStrokes()[0]); |
universe@20 | 51 | testListeners(item); |
universe@20 | 52 | } |
universe@20 | 53 | { |
universe@20 | 54 | final var item = datei.getItem(3); |
universe@20 | 55 | assertEquals("Speichern als...", item.getText()); |
universe@20 | 56 | assertEquals('A', item.getMnemonic()); |
universe@20 | 57 | testListeners(item); |
universe@20 | 58 | } |
universe@20 | 59 | |
universe@20 | 60 | assertNull(datei.getItem(4)); |
universe@20 | 61 | { |
universe@20 | 62 | final var item = datei.getItem(5); |
universe@20 | 63 | assertEquals("Prüfen", item.getText()); |
universe@20 | 64 | assertEquals('P', item.getMnemonic()); |
universe@20 | 65 | assertEquals(1, item.getRegisteredKeyStrokes().length); |
universe@20 | 66 | assertEquals(KeyStroke.getKeyStroke("control P"), item.getRegisteredKeyStrokes()[0]); |
universe@20 | 67 | testListeners(item); |
universe@20 | 68 | } |
universe@20 | 69 | { |
universe@20 | 70 | final var item = datei.getItem(6); |
universe@20 | 71 | assertEquals("Lösen", item.getText()); |
universe@20 | 72 | assertEquals('L', item.getMnemonic()); |
universe@20 | 73 | assertEquals(1, item.getRegisteredKeyStrokes().length); |
universe@20 | 74 | assertEquals(KeyStroke.getKeyStroke("control L"), item.getRegisteredKeyStrokes()[0]); |
universe@20 | 75 | testListeners(item); |
universe@20 | 76 | } |
universe@20 | 77 | assertNull(datei.getItem(7)); |
universe@20 | 78 | { |
universe@20 | 79 | final var item = datei.getItem(8); |
universe@20 | 80 | assertEquals("Beenden", item.getText()); |
universe@20 | 81 | assertEquals('E', item.getMnemonic()); |
universe@20 | 82 | testListeners(item); |
universe@20 | 83 | } |
universe@20 | 84 | |
universe@20 | 85 | final var info = menu.getMenu(1); |
universe@20 | 86 | assertEquals("Info", info.getText()); |
universe@20 | 87 | assertEquals('I', info.getMnemonic()); |
universe@20 | 88 | |
universe@20 | 89 | assertEquals(1, info.getItemCount()); |
universe@20 | 90 | final var about = info.getItem(0); |
universe@20 | 91 | assertEquals("Über...", about.getText()); |
universe@20 | 92 | assertEquals('B', about.getMnemonic()); |
universe@20 | 93 | assertEquals(1, about.getRegisteredKeyStrokes().length); |
universe@20 | 94 | assertEquals(KeyStroke.getKeyStroke("F1"), about.getRegisteredKeyStrokes()[0]); |
universe@20 | 95 | testListeners(about); |
universe@20 | 96 | } |
universe@20 | 97 | } |