114 lines
3.2 KiB
Java
114 lines
3.2 KiB
Java
package hhn.temp.project;
|
|
|
|
import hhn.temp.project.provider.DatabaseManager;
|
|
import hhn.temp.project.provider.SimpleDatabaseManager;
|
|
import org.junit.jupiter.api.BeforeEach;
|
|
import org.junit.jupiter.api.DisplayName;
|
|
import org.junit.jupiter.api.Test;
|
|
|
|
import static org.junit.jupiter.api.Assertions.*;
|
|
|
|
import java.io.IOException;
|
|
import java.sql.SQLException;
|
|
import java.util.ArrayList;
|
|
import java.util.Collection;
|
|
|
|
public class DatabaseGoodCasesTest {
|
|
|
|
private DatabaseManager<Task> databaseManager;
|
|
|
|
@BeforeEach
|
|
public void setup() throws SQLException, IOException {
|
|
databaseManager = new SimpleDatabaseManager<>();
|
|
databaseManager.connect();
|
|
databaseManager.clearDatabase();
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert that the TestClass could be inserted into the database")
|
|
public void assertGetTestClass() throws SQLException {
|
|
|
|
databaseManager.connect();
|
|
|
|
Task task = new Task(1, 1, "hi", "hi");
|
|
|
|
databaseManager.saveObject(task);
|
|
|
|
Task taskNew = databaseManager.getObject(1);
|
|
|
|
assertEquals(task.getTaskId(), taskNew.getTaskId());
|
|
assertEquals(task.getName(), taskNew.getName());
|
|
assertEquals(task.getDescription(), taskNew.getDescription());
|
|
assertEquals(task.getWorkerId(), taskNew.getWorkerId());
|
|
assertEquals(task.getTaskState(), taskNew.getTaskState());
|
|
|
|
databaseManager.close();
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert that an inserted and deleted task is not there anymore")
|
|
public void assertDeleteTest() throws SQLException {
|
|
|
|
databaseManager.connect();
|
|
|
|
Task task = new Task(9, 1, "hi", "hi");
|
|
|
|
databaseManager.saveObject(task);
|
|
|
|
databaseManager.deleteObject(9);
|
|
|
|
databaseManager.getObject(9);
|
|
|
|
databaseManager.close();
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert that a simple Task could be inserted into the database")
|
|
public void assertInsertTask() throws SQLException {
|
|
|
|
Task testTask = new Task(1, 1, "Hello World", "Description");
|
|
|
|
databaseManager.connect();
|
|
databaseManager.saveObject(testTask);
|
|
databaseManager.close();
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert that multiple Tasks could be inserted into the database")
|
|
public void assertInsertMultipleTasks() throws SQLException {
|
|
|
|
Task testTaskZero = new Task(1, 1, "Hello", "Description");
|
|
Task testTaskOne = new Task(2, 2, "World", "Description");
|
|
Task testTaskTwo = new Task(3, 3, "Hello World", "Description");
|
|
|
|
Collection<Task> tasks = new ArrayList<>();
|
|
tasks.add(testTaskZero);
|
|
tasks.add(testTaskOne);
|
|
tasks.add(testTaskTwo);
|
|
|
|
databaseManager.connect();
|
|
databaseManager.saveObjects(tasks);
|
|
databaseManager.close();
|
|
}
|
|
|
|
@Test
|
|
@DisplayName("Assert insert object and update it")
|
|
public void assertInsertUpdateTask() throws SQLException {
|
|
|
|
int taskId = 1;
|
|
|
|
Task testTask = new Task(taskId, 1, "Hello World", "Description");
|
|
Task newTask = new Task(taskId, 1, "No World", "Description");
|
|
|
|
databaseManager.connect();
|
|
databaseManager.saveObject(testTask);
|
|
newTask = databaseManager.updateObject(testTask.getTaskId(), newTask);
|
|
|
|
assertNotNull(testTask);
|
|
|
|
assertNotEquals(testTask.getDescription(), newTask.getDescription());
|
|
assertEquals(testTask.getTaskId(), newTask.getTaskId());
|
|
|
|
databaseManager.close();
|
|
}
|
|
} |