From 7201f66214b1a8b707f2167d214b68baf3aa8f20 Mon Sep 17 00:00:00 2001 From: KevinSchoenmayer Date: Wed, 3 Dec 2025 20:33:11 +0100 Subject: [PATCH] Small commit while writing tests --- .../hhn/temp/project/AssignmentManager.java | 3 ++ src/main/java/hhn/temp/project/Main.java | 9 +++++ .../java/hhn/temp/project/UserCommands.java | 20 +++++++++++ test/hhn/temp/project/GoodCasesTest.java | 35 +++++++++++++++++++ 4 files changed, 67 insertions(+) create mode 100644 src/main/java/hhn/temp/project/Main.java create mode 100644 src/main/java/hhn/temp/project/UserCommands.java diff --git a/src/main/java/hhn/temp/project/AssignmentManager.java b/src/main/java/hhn/temp/project/AssignmentManager.java index ec8d4510..0f6d07d1 100644 --- a/src/main/java/hhn/temp/project/AssignmentManager.java +++ b/src/main/java/hhn/temp/project/AssignmentManager.java @@ -10,12 +10,15 @@ public class AssignmentManager { Map taskMap; int workerIdCounter; int taskIdCounter; + UserCommands userInterface; public AssignmentManager() { workerMap = new HashMap<>(); taskMap = new HashMap<>(); int workerIdCounter = 1000; int taskIdCounter = 0; + userInterface = new UserCommands(); + userInterface.start(); } public int createWorker(String name) { diff --git a/src/main/java/hhn/temp/project/Main.java b/src/main/java/hhn/temp/project/Main.java new file mode 100644 index 00000000..e944ddbc --- /dev/null +++ b/src/main/java/hhn/temp/project/Main.java @@ -0,0 +1,9 @@ +package hhn.temp.project; + +import java.util.Scanner; + +public class Main { + public static void main(String[] args) { + AssignmentManager manager = new AssignmentManager(); + } +} diff --git a/src/main/java/hhn/temp/project/UserCommands.java b/src/main/java/hhn/temp/project/UserCommands.java new file mode 100644 index 00000000..70f25b2d --- /dev/null +++ b/src/main/java/hhn/temp/project/UserCommands.java @@ -0,0 +1,20 @@ +package hhn.temp.project; + +import java.util.Scanner; + +public class UserCommands { + public void start() { + boolean close = false; + Scanner scanner = new Scanner(System.in); + while (!close) { + System.out.println("Type '?' or 'help' for a list of commands"); + System.out.println("Please enter a command:"); + String input = scanner.nextLine(); + handleInput(input); + } + scanner.close(); + } + public void handleInput(String input) { + + } +} diff --git a/test/hhn/temp/project/GoodCasesTest.java b/test/hhn/temp/project/GoodCasesTest.java index 31988ef6..efab70d8 100644 --- a/test/hhn/temp/project/GoodCasesTest.java +++ b/test/hhn/temp/project/GoodCasesTest.java @@ -13,6 +13,7 @@ public class GoodCasesTest { public void setup() { manager = new AssignmentManager(); } + @Test @DisplayName("Assert that a Worker can add a Task") public void assertWorkerCanAddTask() { @@ -30,6 +31,7 @@ public class GoodCasesTest { int taskId = manager.addTask(workerId, "Run", "Jog 10 Miles"); assertEquals(sizeCount + 1, manager.getTaskMap().size()); } + @Test @DisplayName("Assert existing Tasks can be edited") public void assertExistingTasksCanBeEdited() { @@ -50,6 +52,7 @@ public class GoodCasesTest { manager.removeTask(taskId); assertEquals(sizeCount, manager.getTaskMap().size()); } + @Test @DisplayName("Assert deleted Tasks no longer show up in the List") public void assertDeletedTasksDisappear() { @@ -58,6 +61,7 @@ public class GoodCasesTest { manager.removeTask(taskId); assertThrows(IllegalArgumentException.class, () -> manager.getTask(taskId)); } + @Test @DisplayName("Check Getters") public void assertGettersWorkCorrectly() { @@ -70,6 +74,7 @@ public class GoodCasesTest { assertEquals(manager.getTask(taskId).getWorkerId(), workerId); } + @Test @DisplayName("Assert that Task State is actually changed when submitted as finished") public void assertTaskStateChanges() { @@ -81,4 +86,34 @@ public class GoodCasesTest { assertSame(TaskState.IN_PROGRESS, manager.getTask(taskId).getTaskState()); } + @Test + @DisplayName("Assert that the Scanner is actually started when AM calls start") + public void assertScannerExists() { + try { + manager.getUserCommands().getScanner(); + } catch (Exception e) { + fail("Scanner does not exists or can't be gotten by getScanner()"); + } + } + @Test + @DisplayName("Check that every required surface command actually works") + public void assertCommandsAreRecognized() { + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("?")); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("help")); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("createWorker")); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("createTask")); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("selectTask")); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("listWorkers")); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("exit")); + } + @Test + @DisplayName("Check that every task command works") + public void assertFinishingTasksIsPossibleThroughUi() { + int workerId = manager.createWorker("Alfred"); + int taskId = manager.addTask(workerId, "Run", "Jog 10 Miles"); + manager.getUserCommands().handleInput("selectTask"); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput(taskId)); + assertDoesNotThrow(() -> manager.getUserCommands().handleInput("finishTask")); + } + }