You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
85 lines
2.1 KiB
85 lines
2.1 KiB
package Application;
|
|
|
|
import org.junit.jupiter.api.AfterEach;
|
|
import org.junit.jupiter.api.Assertions;
|
|
import org.junit.jupiter.api.BeforeEach;
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
import static org.junit.jupiter.api.Assertions.*;
|
|
|
|
class MenuManagerTest {
|
|
|
|
MenuManager mm;
|
|
|
|
@BeforeEach
|
|
void setUp() {
|
|
Menu menu1 = new Menu("Menu1");
|
|
Menu menu2 = new Menu("Menu2");
|
|
Menu menu1_1 = new Menu("Menu1.1");
|
|
menu1.addMenu(menu1_1);
|
|
mm = new MenuManager();
|
|
mm.addMenu(menu1);
|
|
mm.addMenu(menu2);
|
|
}
|
|
|
|
@AfterEach
|
|
void tearDown() {
|
|
}
|
|
|
|
@Test
|
|
void select() {
|
|
assertNull(mm.getCurrentMenu());
|
|
mm.select(0);
|
|
assertEquals(mm.getCurrentMenu().getName(), "Menu1");
|
|
mm.select(0);
|
|
assertEquals(mm.getCurrentMenu().getName(), "Menu1.1");
|
|
}
|
|
|
|
@Test
|
|
void inRootMenu() {
|
|
assertTrue(mm.inRootMenu());
|
|
mm.select(0);
|
|
assertFalse(mm.inRootMenu());
|
|
}
|
|
|
|
@Test
|
|
void back() {
|
|
try {
|
|
mm.back();
|
|
Assertions.fail("Test failed: shouldn't be able to go back in rootMenu");
|
|
} catch (Exception e) {
|
|
//Should throw Exception because currently in rootMenu
|
|
}
|
|
mm.select(0);
|
|
try {
|
|
mm.back();
|
|
assertTrue(mm.inRootMenu());
|
|
} catch (Exception e) {
|
|
Assertions.fail("Test failed: " + e.getMessage());
|
|
}
|
|
mm.select(0);
|
|
mm.select(0);
|
|
try {
|
|
mm.back();
|
|
assertEquals(mm.getCurrentMenu().getName(), "Menu1");
|
|
} catch (Exception e) {
|
|
Assertions.fail("Test failed: " + e.getMessage());
|
|
}
|
|
}
|
|
|
|
@Test
|
|
void getFormattedMenuList(){
|
|
assertEquals(mm.getFormattedMenuList(), "1: Menu1\n2: Menu2\n");
|
|
mm.select(0);
|
|
assertEquals(mm.getFormattedMenuList(), "1: Menu1.1\n");
|
|
}
|
|
|
|
@Test
|
|
void getSize() {
|
|
assertEquals(mm.getSize(), 2);
|
|
mm.select(0);
|
|
assertEquals(mm.getSize(), 1);
|
|
mm.select(0);
|
|
assertEquals(mm.getSize(), 0);
|
|
}
|
|
}
|