All checks were successful
Gradle CI with Full Reports / build (push) Successful in 41m56s
134 lines
5.0 KiB
Java
134 lines
5.0 KiB
Java
package project;
|
|
import hhn.temp.project.Main;
|
|
import hhn.temp.project.Task;
|
|
import hhn.temp.project.TaskManager;
|
|
import hhn.temp.project.TaskStatus;
|
|
import hhn.temp.project.expections.SQLNoConectionException;
|
|
import hhn.temp.project.expections.SQLStatmentException;
|
|
import hhn.temp.project.expections.TaskAlreadyExistsException;
|
|
import hhn.temp.project.expections.TaskHasNoWorkerException;
|
|
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 BadCaseTaskTest {
|
|
|
|
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() {
|
|
assertThrows(SQLNoConectionException.class,() -> taskManager = new TaskManager("deep", "deep", db, host));
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert an IllegalArgumentException when you create a new Task with no or wrong Name, Description")
|
|
public void assertExceptionOnCreateNewTask() {
|
|
taskManager = new TaskManager(user, password, db, host);
|
|
assertThrows(IllegalArgumentException.class,() -> taskManager.createTask("", null));
|
|
assertThrows(IllegalArgumentException.class,() -> taskManager.createTask(null, ""));
|
|
assertThrows(IllegalArgumentException.class,() -> taskManager.createTask(null, null));
|
|
assertThrows(IllegalArgumentException.class,() -> taskManager.createTask("", ""));
|
|
assertThrows(IllegalArgumentException.class,() -> taskManager.createTask("", "test"));
|
|
assertThrows(IllegalArgumentException.class,() -> taskManager.createTask("ä#eadsew2", "test"));
|
|
|
|
assertDoesNotThrow(() -> taskManager.resetTest());
|
|
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert an IllegalArgumentException when you create a new Task with the same Name of a exits Task")
|
|
public void assertExceptionOnCreateNewTaskWithExitsName() {
|
|
taskManager = new TaskManager(user, password, db, host);
|
|
String name = "Name";
|
|
String description = "Description";
|
|
assertDoesNotThrow(() -> taskManager.createTask(name, description));
|
|
assertThrows(TaskAlreadyExistsException.class, () -> taskManager.createTask(name, description));
|
|
|
|
assertDoesNotThrow(() -> taskManager.resetTest());
|
|
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert an IllegalArgumentException when you edit a exits Task")
|
|
public void assertExceptionOnEditATask() {
|
|
taskManager = new TaskManager(user, password, db, host);
|
|
String name = "Name";
|
|
String description = "Description";
|
|
Task task = taskManager.createTask(name, description);
|
|
|
|
assertThrows(IllegalArgumentException.class, () -> task.setDescription(null));
|
|
assertThrows(IllegalArgumentException.class, () -> task.setStatus(null));
|
|
|
|
assertDoesNotThrow(() -> taskManager.resetTest());
|
|
|
|
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert an IllegalArgumentException when calling a non-Existing Task")
|
|
public void assertExceptionOnCallingANonextistingTask (){
|
|
taskManager = new TaskManager(user, password, db, host);
|
|
String wrongName = "Manager";
|
|
String name = "Name";
|
|
String description = "Description";
|
|
Task task = taskManager.createTask(name, description);
|
|
|
|
assertThrows(IllegalArgumentException.class, () -> taskManager.getTask(wrongName));
|
|
assertThrows(IllegalArgumentException.class, () -> taskManager.getTask(23));
|
|
|
|
assertDoesNotThrow(() -> taskManager.resetTest());
|
|
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert an IllegalArgumentException when delete a existing Task with wrong arguments")
|
|
public void assertExceptionOnDeletingTask (){
|
|
taskManager = new TaskManager(user, password, db, host);
|
|
String wrongName = "Manager";
|
|
String name = "Name";
|
|
String description = "Description";
|
|
Task task = taskManager.createTask(name, description);
|
|
|
|
assertThrows(IllegalArgumentException.class, () -> taskManager.deleteTask(null));
|
|
assertThrows(IllegalArgumentException.class, () -> taskManager.deleteTask(""));
|
|
assertThrows(IllegalArgumentException.class, () -> taskManager.deleteTask(wrongName));
|
|
|
|
assertDoesNotThrow(() -> taskManager.resetTest());
|
|
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Get a Exeption by setWorker and getWorker")
|
|
public void assertExeptionBySetAndGetAuthorOfATask() {
|
|
taskManager = new TaskManager(user, password, db, host);
|
|
String name = "Name";
|
|
String description = "Description";
|
|
String workerName = "worker";
|
|
|
|
Task task = taskManager.createTask(name, description);
|
|
assertThrows(TaskHasNoWorkerException.class, () -> task.getWorker());
|
|
assertThrows(IllegalArgumentException.class, () -> task.setWorker(null));
|
|
assertThrows(IllegalArgumentException.class, () -> task.setWorker(""));
|
|
assertThrows(IllegalArgumentException.class, () -> task.setWorker("ewrgi43rfoiw2öa#-"));
|
|
|
|
assertDoesNotThrow(() -> taskManager.resetTest());
|
|
|
|
}
|
|
|
|
}
|