package eu.stork.documentservice.tests; import static org.junit.Assert.*; import java.util.Date; import java.util.UUID; import org.junit.Test; import eu.stork.documentservice.data.DatabaseConnector; import eu.stork.documentservice.data.DatabaseConnectorMySQLImpl; import eu.stork.documentservice.exceptions.DatabaseException; import eu.stork.documentservice.model.DocumentModel; import eu.stork.documentservice.model.RequestModel; import eu.stork.documentservice.model.TempDocumentModel; import eu.stork.documentservice.utils.Utils; public class DatabaseTests { private String user = "stork"; private String password = "stork"; private String database = "stork"; private String server = "localhost:3306"; private String pdfLoc = "C:/Temp/temp.pdf"; private String destCountry = "AT"; private String spCountry = "IS"; private String spId = "Demo-SP"; private String xmlrequest = "foo"; private String xmlresponse = "foo_signed"; private static String docId = ""; private static String docId2 = ""; private static String reqId = ""; public DatabaseTests() { if (docId.isEmpty()) docId = UUID.randomUUID().toString(); if (docId2.isEmpty()) docId2 = UUID.randomUUID().toString(); if (reqId.isEmpty()) reqId = UUID.randomUUID().toString(); } @Test //Test adding document public void test1() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); DocumentModel document = new DocumentModel(); document.setDocid(docId); document.setDocument(Utils.readData(pdfLoc)); document.setFilename("pdfdoc.pdf"); document.setMimetype("application/pdf"); try { boolean ok = conn.addDocument(document); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test getting document public void test2() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { DocumentModel document = conn.getDocument(docId); assertNotNull(document); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test updating document public void test3() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { DocumentModel document = conn.getDocument(docId); boolean ok = conn.updateDocument(document); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test deleting document public void test4() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { boolean ok = conn.deleteDocument(docId); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test adding new request public void test5() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); RequestModel request = new RequestModel(); request.setRequestid(reqId); request.setDestcountry(destCountry); request.setSpcountry(spCountry); request.setSpid(spId); request.setXmlrequest(xmlrequest); try { boolean ok = conn.addRequest(request); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test getting request public void test6() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { RequestModel request = conn.getRequest(reqId); assertNotNull(request); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test updating request public void test7() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { RequestModel request = conn.getRequest(reqId); request.setDocid(docId); boolean ok = conn.updateRequest(request); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test getting new request public void test8() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { RequestModel request = conn.getRequest(reqId); request.setXmlresponse(xmlresponse); request.setRestimestamp(new Date()); boolean ok = conn.updateRequest(request); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test add temp document public void test10() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); TempDocumentModel document = new TempDocumentModel(); document.setDocid(docId2); document.setDocument(Utils.readData(pdfLoc)); document.setSpid(spId); //document.setFilename("pdfdoc.pdf"); document.setMimetype("application/pdf"); try { boolean ok = conn.addTempDocument(document); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test getting temp document public void test11() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { TempDocumentModel document = conn.getTempDocument(docId2); assertNotNull(document); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test updating temp document public void test12() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { TempDocumentModel document = conn.getTempDocument(docId2); boolean ok = conn.updateTempDocument(document); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } @Test //Test delete temp document public void test13() { DatabaseConnector conn = new DatabaseConnectorMySQLImpl(user, password, server, database); try { boolean ok = conn.deleteTempDocument(docId2); assertTrue(ok); } catch (DatabaseException ex) { ex.printStackTrace(); } } }