package at.ac.tuwien.sepm.assignment.groupphase.operation; import static junit.framework.TestCase.fail; import static org.mockito.Mockito.mock; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.DBOperationDAO; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.OperationDAO; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation.Severity; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation.Status; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle.ConstructionType; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle.VehicleType; import at.ac.tuwien.sepm.assignment.groupphase.exception.PersistenceException; import at.ac.tuwien.sepm.assignment.groupphase.util.JDBCConnectionManager; import java.nio.charset.Charset; import java.sql.SQLException; import java.time.Instant; import java.util.List; import org.junit.BeforeClass; import org.junit.Test; public class OperationPersistenceTest { private final OperationDAO operationDAO = new DBOperationDAO(new JDBCConnectionManager("jdbc:h2:mem:test;DB_CLOSE_DELAY=-1")); @BeforeClass public static void createSchema() throws SQLException { /*RunScript.execute( "jdbc:h2:mem:test;DB_CLOSE_DELAY=-1", "", "", "classpath:sql/database.sql", Charset.forName("UTF8"), false);*/ } @Test public void addOperation() { //TODO Vehicle vehicle = Vehicle.builder() .status(Vehicle.Status.FREI_FUNK) .constructionType(ConstructionType.HOCHDACH) .name("BKTW_123") .hasNef(true) .type(VehicleType.BKTW) .build(); Operation operation = Operation.builder() .status(Status.ACTIVE) .opCode("ALP-95E7") .created(Instant.now()) .destination("Wiedner Hauptstraße 35, Wien") .additionalInfo("HTU Wien") .severity(Severity.B) .vehicles(List.of(vehicle)) .build(); try { operationDAO.add(operation); } catch (PersistenceException e) { fail(); } } }