Files
GSE2TaskTracker/test/project/GoodCaseTaskTest.java
Jan-Philipp Luithardt dce190b0a4
All checks were successful
Gradle CI with Full Reports / build (push) Successful in 41m56s
fix actions
2025-12-07 15:33:08 +01:00

167 lines
5.0 KiB
Java

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;
private String user = "hhn";
private String password = "!9oSmhsiwYO.m)_x";
private String db = "hhn";
private String host = "0.0.0.0";
@BeforeEach
public void setup() {
Main main = new Main();
}
@Test
@DisplayName("Create a new TaskManager and test Connecton")
public void assertCreateNewTaskManager() {
assertDoesNotThrow(() -> taskManager = new TaskManager(user, password, db, host));
assertDoesNotThrow(() -> taskManager.resetTest());
String name = "Name";
String description = "Description";
assertDoesNotThrow(() -> taskManager.createTask(name, description));
assertDoesNotThrow(() -> taskManager.resetTest());
}
@Test
@DisplayName("Create a new Task")
public void assertCreateNewTask() {
taskManager = new TaskManager(user, password, db, host);
assertDoesNotThrow(() -> taskManager.resetTest());
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());
assertDoesNotThrow(() -> taskManager.resetTest());
}
@Test
@DisplayName("Delete Task")
public void assertDeleteTask(){
taskManager = new TaskManager(user, password, db, host);
assertDoesNotThrow(() -> taskManager.resetTest());
String name = "Name";
String description = "Description";
String deletingTask = "Name";
Task task = taskManager.createTask(name, description);
List<Task> tasklist = taskManager.getTaskList();
assertNotNull(tasklist);
assertTrue(tasklist.stream().anyMatch( t -> t.getName().equals(deletingTask)));
Task dbTask = taskManager.getTask(name);
assertNotNull(dbTask);
assertEquals(task.getName(), dbTask.getName());
assertEquals(task.getTaskID(), dbTask.getTaskID());
assertEquals(task.getStatus(), dbTask.getStatus());
taskManager.deleteTask(deletingTask);
assertDoesNotThrow(() -> taskManager.resetTest());
}
@Test
@DisplayName("Check TaskList if Task there")
public void assertCheckTaskListForTask() {
taskManager = new TaskManager(user, password, db, host);
assertDoesNotThrow(() -> taskManager.resetTest());
String name = "Name";
String description = "Description";
Task task = taskManager.createTask(name, description);
List<Task> taskList = taskManager.getTaskList();
assertNotNull(taskList);
assertTrue(taskList.stream().anyMatch(t -> t.getName().equals(task.getName())));
Task dbTask = taskManager.getTask(name);
assertNotNull(dbTask);
assertEquals(task.getName(), dbTask.getName());
assertEquals(task.getTaskID(), dbTask.getTaskID());
assertEquals(task.getStatus(), dbTask.getStatus());
Task dbTaskWithId = taskManager.getTask(task.getTaskID());
assertNotNull(dbTaskWithId);
assertEquals(task.getName(), dbTaskWithId.getName());
assertEquals(task.getTaskID(), dbTaskWithId.getTaskID());
assertEquals(task.getStatus(), dbTaskWithId.getStatus());
assertDoesNotThrow(() -> taskManager.resetTest());
}
@Test
@DisplayName("Edit Task")
public void assertEditATask() {
taskManager = new TaskManager(user, password, db, host);
assertDoesNotThrow(() -> taskManager.resetTest());
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.INPROCESS);
assertEquals(TaskStatus.INPROCESS, task.getStatus());
assertDoesNotThrow(() -> taskManager.resetTest());
}
@Test
@DisplayName("Set Author of a Task")
public void assertSetAuthorOfATask() {
taskManager = new TaskManager(user, password, db, host);
assertDoesNotThrow(() -> taskManager.resetTest());
String name = "Name";
String description = "Description";
String workerName = "worker";
//String newName = "Name2";
String newDescription = "Description2";
Task task = taskManager.createTask(name, description);
assertNotNull(task);
assertEquals(TaskStatus.OPEN, task.getStatus());
assertDoesNotThrow(() -> task.setWorker(workerName));
assertEquals(workerName, task.getWorker());
assertEquals(TaskStatus.INPROCESS, task.getStatus());
assertDoesNotThrow(() -> taskManager.resetTest());
}
}