package project; import hhn.temp.project.Main; import hhn.temp.project.TaskManager; import hhn.temp.project.Task; import hhn.temp.project.TaskStatus; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.DisplayName; import org.junit.jupiter.api.Test; import java.util.List; import static org.junit.jupiter.api.Assertions.*; public class GoodCaseTaskTest { private TaskManager taskManager; @BeforeEach public void setup() { Main main = new Main(); taskManager = new TaskManager(); } @Test @DisplayName("Create a new Task") public void assertCreateNewTask() { String name = "Name"; String description = "Description"; Task task = taskManager.createTask(name, description); assertNotNull(task); assertEquals(name, task.getName()); assertEquals(description, task.getDescription()); assertEquals(TaskStatus.OPEN, task.getStatus()); } @Test @DisplayName("Delete Task") public void assertDeleteTask(){ String name = "Name"; String description = "Description"; String deletingTask = "Name"; Task task = taskManager.createTask(name, description); List tasklist = taskManager.getTaskList(); assertNotNull(tasklist); assertTrue(tasklist.stream().anyMatch( t -> t.equals(deletingTask))); assertEquals(task, taskManager.getTask(name)); task.removeTask(deletingTask); } @Test @DisplayName("Check TaskList if Task there") public void assertCheckTaskListForTask() { String name = "Name"; String description = "Description"; Task task = taskManager.createTask(name, description); List taskList = taskManager.getTaskList(); assertNotNull(taskList); assertTrue(taskList.stream().anyMatch(t -> t.equals(task))); assertEquals(task, taskManager.getTask(name)); assertEquals(task, taskManager.getTask(task.getTaskID())); } @Test @DisplayName("Edit Task") public void assertEditATask() { String name = "Name"; String description = "Description"; //String newName = "Name2"; String newDescription = "Description2"; Task task = taskManager.createTask(name, description); assertNotNull(task); assertEquals(description, task.getDescription()); task.setDescription(newDescription); assertEquals(newDescription, task.getDescription()); assertEquals(TaskStatus.OPEN, task.getStatus()); task.setStatus(TaskStatus.IN_PROCESS); assertEquals(TaskStatus.IN_PROCESS, task.getStatus()); } }