/** Test of selectByStatus method, of class PublicationDAO. */ @Test public void testSelectByStatus_3args_2() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); List<String> componentIds = new ArrayList<String>(); componentIds.add("kmelia200"); componentIds.add("kmelia201"); String status = "Valid"; Collection<PublicationDetail> result = PublicationDAO.selectByStatus(con, componentIds, status); assertEquals(result.size(), 2); status = "Draft"; result = PublicationDAO.selectByStatus(con, componentIds, status); assertEquals(result.size(), 0); status = "Valid"; componentIds.remove("kmelia200"); result = PublicationDAO.selectByStatus(con, componentIds, status); assertEquals(result.size(), 0); } finally { connection.close(); } }
protected static void closeDBUnit() { try { connection.close(); } catch (SQLException e) { e.printStackTrace(); } }
@BeforeClass public static void setUpBeforeClass() throws Exception { // initialize Log4j Properties props = new Properties(); props.load( (new ClassPathResource("confs/log4j-exercise.properties", CompanyService.class)) .getInputStream()); org.apache.log4j.PropertyConfigurator.configure(props); // load springframework context applContext = new ClassPathXmlApplicationContext( "confs/spring-exercise-hibernate.xml", CompanyService.class); // create DbUnit core components IDatabaseConnection conn = new DatabaseDataSourceConnection((DataSource) applContext.getBean("dataSource")); dataSet = new FlatXmlDataSet( (new ClassPathResource( "thirdstage/exercise/spring/transaction/case2/test/dataset/company-building-factory-seed-01.xml")) .getFile()); // clean target tables and load test data try { DatabaseOperation.CLEAN_INSERT.execute(conn, dataSet); } finally { conn.close(); } }
/** Test of selectByFatherIds method, of class PublicationDAO. */ @Test public void testSelectByFatherIds() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); List<String> fatherIds = new ArrayList<String>(); fatherIds.add("110"); PublicationPK pubPK = new PublicationPK("useless", "kmelia200"); String sorting = "P.pubName"; List<String> status = new ArrayList<String>(); status.add("Valid"); boolean filterOnVisibilityPeriod = true; ArrayList<PublicationDetail> result = PublicationDAO.selectByFatherIds( con, fatherIds, pubPK, sorting, status, filterOnVisibilityPeriod); assertEquals(result.size(), 2); // Test on an empty node fatherIds.clear(); fatherIds.add("999"); result = PublicationDAO.selectByFatherIds( con, fatherIds, pubPK, sorting, status, filterOnVisibilityPeriod); assertEquals(result.size(), 0); } finally { connection.close(); } }
/** Test of selectByNameAndNodeId method, of class PublicationDAO. */ @Test public void testSelectByNameAndNodeId() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); PublicationPK pubPK = new PublicationPK("100", "kmelia200"); String name = "Publication 1"; int nodeId = 110; PublicationDetail result = PublicationDAO.selectByNameAndNodeId(con, pubPK, name, nodeId); assertEquals(pubPK, result.getPK()); assertEquals("Homer Simpson", result.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(result.getBeginDate())); assertEquals("00:00", result.getBeginHour()); assertEquals("Contenu de la publication 1", result.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(result.getCreationDate())); assertEquals("100", result.getCreatorId()); assertEquals("Première publication de test", result.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(result.getEndDate())); assertEquals("23:59", result.getEndHour()); assertEquals(1, result.getImportance()); assertEquals("0", result.getInfoId()); assertEquals("kmelia200", result.getInstanceId()); assertEquals("test", result.getKeywords()); assertEquals("Publication 1", result.getName()); assertEquals("Valid", result.getStatus()); assertEquals("300", result.getValidatorId()); assertEquals("Publication 1", result.getTitle()); } finally { connection.close(); } }
protected void assertExpTable() throws Exception { String table = expected.getTableMetaData().getTableName(); actual = databaseConnection.createQueryTable(table, query); try { assertEquals(expected, actual); } finally { databaseConnection.close(); } }
/** Executa operações do DBUnit no dataset <code>dbUnitXmlPath</code>. */ protected void execute(DatabaseOperation operation, String dbUnitXmlPath) { try { IDatabaseConnection dbconn = this.getDbUnitConnection(); operation.execute(dbconn, this.getDataSetFrom(dbUnitXmlPath)); dbconn.close(); } catch (Exception e) { e.printStackTrace(); throw new RuntimeException(e); } }
@AfterClass(alwaysRun = true) protected void tearDown() { if (dbUnitConnection != null) { try { dbUnitConnection.close(); } catch (SQLException e) { logger.catching(e); } } }
/** Test of selectByFatherPK method, of class PublicationDAO. */ @Test public void testSelectByFatherPK_Connection_NodePK() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); NodePK fatherPK = new NodePK("110", "kmelia200"); Collection<PublicationDetail> result = PublicationDAO.selectByFatherPK(con, fatherPK); assertNotNull(result); assertEquals(2, result.size()); Iterator<PublicationDetail> iter = result.iterator(); PublicationDetail detail = iter.next(); PublicationPK primaryKey = new PublicationPK("100", "kmelia200"); assertEquals(primaryKey, detail.getPK()); assertEquals("Homer Simpson", detail.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(detail.getBeginDate())); assertEquals("00:00", detail.getBeginHour()); assertEquals("Contenu de la publication 1", detail.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(detail.getCreationDate())); assertEquals("100", detail.getCreatorId()); assertEquals("Première publication de test", detail.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(detail.getEndDate())); assertEquals("23:59", detail.getEndHour()); assertEquals(1, detail.getImportance()); assertEquals("0", detail.getInfoId()); assertEquals("kmelia200", detail.getInstanceId()); assertEquals("test", detail.getKeywords()); assertEquals("Publication 1", detail.getName()); assertEquals("Valid", detail.getStatus()); assertEquals("300", detail.getValidatorId()); assertEquals("Publication 1", detail.getTitle()); detail = iter.next(); primaryKey = new PublicationPK("101", "kmelia200"); assertEquals(primaryKey, detail.getPK()); assertEquals("Bart Simpson", detail.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(detail.getBeginDate())); assertEquals("01:10", detail.getBeginHour()); assertEquals("Contenu de la publication 2", detail.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(detail.getCreationDate())); assertEquals("101", detail.getCreatorId()); assertEquals("2ème publication de test", detail.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(detail.getEndDate())); assertEquals("20:35", detail.getEndHour()); assertEquals(5, detail.getImportance()); assertEquals("0", detail.getInfoId()); assertEquals("kmelia200", detail.getInstanceId()); assertEquals("test", detail.getKeywords()); assertEquals("Publication 2", detail.getName()); assertEquals("Valid", detail.getStatus()); assertEquals("300", detail.getValidatorId()); assertEquals("Publication 2", detail.getTitle()); } finally { connection.close(); } }
private void closeAllConnections() { for (; ; ) { IDatabaseConnection conn = connections.poll(); if (conn == null) return; try { conn.close(); } catch (Exception e) { e.printStackTrace(); } } }
protected void setUp() throws Exception { // NOTE: This will disable the SYS GLOBAL party creation and creation of all the reference // entities!!! initializeModelData = false; super.setUp(); IDatabaseConnection dbUnitConn = null; dbUnitConn = getDbUnitConnection(); DatabaseOperation.REFRESH.execute(dbUnitConn, getDataSet()); dbUnitConn.getConnection().commit(); dbUnitConn.close(); dbUnitConn.getConnection().close(); }
/** {@inheritDoc} Uses the connection from the provided databaseTester. */ public void verifyData() throws Exception { if (databaseTester == null) { throw new IllegalStateException("databaseTester is null; must configure or set it first"); } IDatabaseConnection connection = databaseTester.getConnection(); try { int count = tableDefs.length; LOG.info("verifyData: about to verify {} tables={}", new Integer(count), tableDefs); if (count == 0) { LOG.warn("verifyData: No tables to verify;" + " no VerifyTableDefinitions specified"); } for (int i = 0; i < count; i++) { VerifyTableDefinition td = tableDefs[i]; String[] excludeColumns = td.getColumnExclusionFilters(); String[] includeColumns = td.getColumnInclusionFilters(); String tableName = td.getTableName(); LOG.info("verifyData: Verifying table '{}'", tableName); LOG.debug("verifyData: Loading its rows from expected dataset"); ITable expectedTable = null; try { expectedTable = expectedDs.getTable(tableName); } catch (Exception e) { final String msg = "verifyData: Problem obtaining table '" + tableName + "' from expected dataset"; LOG.error(msg, e); throw new DataSetException(msg, e); } LOG.debug("verifyData: Loading its rows from actual table"); ITable actualTable = null; try { actualTable = connection.createTable(tableName); } catch (Exception e) { final String msg = "verifyData: Problem obtaining table '" + tableName + "' from actual dataset"; LOG.error(msg, e); throw new DataSetException(msg, e); } verifyData(expectedTable, actualTable, excludeColumns, includeColumns); } } finally { LOG.debug("verifyData: Verification done, closing connection"); connection.close(); } }
/** Test of changeInstanceId method, of class PublicationDAO. */ @Test public void testChangeInstanceId() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); PublicationPK pk = new PublicationPK("100", "kmelia200"); PublicationDetail detail = PublicationDAO.loadRow(con, pk); assertEquals(pk, detail.getPK()); assertEquals("Homer Simpson", detail.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(detail.getBeginDate())); assertEquals("00:00", detail.getBeginHour()); assertEquals("Contenu de la publication 1", detail.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(detail.getCreationDate())); assertEquals("100", detail.getCreatorId()); assertEquals("Première publication de test", detail.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(detail.getEndDate())); assertEquals("23:59", detail.getEndHour()); assertEquals(1, detail.getImportance()); assertEquals("0", detail.getInfoId()); assertEquals("kmelia200", detail.getInstanceId()); assertEquals("test", detail.getKeywords()); assertEquals("Publication 1", detail.getName()); assertEquals("Valid", detail.getStatus()); assertEquals("300", detail.getValidatorId()); assertEquals("Publication 1", detail.getTitle()); String targetInstance = "kmelia" + RandomGenerator.getRandomInt(600); PublicationDAO.changeInstanceId(con, pk, targetInstance); pk = new PublicationPK("100", targetInstance); detail = PublicationDAO.loadRow(con, pk); assertEquals(pk, detail.getPK()); assertEquals("Homer Simpson", detail.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(detail.getBeginDate())); assertEquals("00:00", detail.getBeginHour()); assertEquals("Contenu de la publication 1", detail.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(detail.getCreationDate())); assertEquals("100", detail.getCreatorId()); assertEquals("Première publication de test", detail.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(detail.getEndDate())); assertEquals("23:59", detail.getEndHour()); assertEquals(1, detail.getImportance()); assertEquals("0", detail.getInfoId()); assertEquals(targetInstance, detail.getInstanceId()); assertEquals("test", detail.getKeywords()); assertEquals("Publication 1", detail.getName()); assertEquals("Valid", detail.getStatus()); assertEquals("300", detail.getValidatorId()); assertEquals("Publication 1", detail.getTitle()); } finally { connection.close(); } }
/** Test of selectByStatus method, of class PublicationDAO. */ @Test public void testSelectByStatus_3args_1() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); PublicationPK pubPK = new PublicationPK("useless", "kmelia200"); String status = "Valid"; Collection<PublicationDetail> result = PublicationDAO.selectByStatus(con, pubPK, status); assertEquals(result.size(), 2); status = "Draft"; result = PublicationDAO.selectByStatus(con, pubPK, status); assertEquals(result.size(), 0); } finally { connection.close(); } }
/** * Verify that we can start the server as a daemon. * * @throws Exception If there was an error. */ @Test public void testRunDaemon() throws Exception { ReflectionUtils.setVariableValueInObject(mojo, "daemon", Boolean.TRUE); try { mojo.execute(); Thread.sleep(5000L); final Connection jdbcConnection = DriverManager.getConnection(getConnectionString()); final IDatabaseConnection connection = new DatabaseConnection(jdbcConnection); IDataSet databaseDataSet = connection.createDataSet(); assertNotNull(databaseDataSet.getTable(getTableName())); connection.close(); jdbcConnection.close(); } finally { signalStop(); } }
private void executeOperations(List<DataSetOperation> list) { IDatabaseConnection con = null; try { con = getConnection(); disableReferentialIntegrity(con); for (DataSetOperation op : list) { log.debug("executing DBUnit operation: " + op); op.execute(con); } enableReferentialIntegrity(con); } finally { if (con != null) { try { con.close(); } catch (Exception ex) { ex.printStackTrace(System.err); } } } }
/** * Verify that we can start the server. * * @throws Exception If there was an error. */ @Test public void testRun() throws Exception { ReflectionUtils.setVariableValueInObject(mojo, "daemon", Boolean.FALSE); final Thread mojoThread = new Thread( new Runnable() { public void run() { try { mojo.execute(); } catch (final Exception e) { } } }); mojoThread.start(); try { Thread.sleep(5000); final Connection jdbcConnection = DriverManager.getConnection(getConnectionString()); final IDatabaseConnection connection = new DatabaseConnection(jdbcConnection); IDataSet databaseDataSet = connection.createDataSet(); assertNotNull(databaseDataSet.getTable(getTableName())); connection.close(); jdbcConnection.close(); } finally { final Timer timer = new Timer(); timer.schedule( new TimerTask() { @Override public void run() { signalStop(); } }, 5000L); mojoThread.join(15000L); } }
@Test public void testGetObject() throws Exception { setUpDatabase(getTestDatabase()); IDatabaseConnection c = getConnection(); ITable names = c.createQueryTable("EXPECTED_NAMES", "SELECT * FROM properties"); Assert.assertEquals(4, names.getRowCount()); QueryExecutor<RetrieveField> qe = new QueryExecutor<RetrieveField>(); qe.setConnection(c.getConnection()); ResultSet rs = qe.process((RetrieveField) query); int count = 0; while (rs.next()) { count++; } Assert.assertTrue(count > 0); rs.close(); qe.close(); c.close(); }
/** Test of storeRow method, of class PublicationDAO. */ @Test public void testStoreRow() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); PublicationPK pk = new PublicationPK("100", "kmelia200"); PublicationDetail detail = PublicationDAO.loadRow(con, pk); assertEquals(pk, detail.getPK()); assertEquals("Homer Simpson", detail.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(detail.getBeginDate())); assertEquals("00:00", detail.getBeginHour()); assertEquals("Contenu de la publication 1", detail.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(detail.getCreationDate())); assertEquals("100", detail.getCreatorId()); assertEquals("Première publication de test", detail.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(detail.getEndDate())); assertEquals("23:59", detail.getEndHour()); assertEquals(1, detail.getImportance()); assertEquals("0", detail.getInfoId()); assertEquals("kmelia200", detail.getInstanceId()); assertEquals("test", detail.getKeywords()); assertEquals("Publication 1", detail.getName()); assertEquals("Valid", detail.getStatus()); assertEquals("300", detail.getValidatorId()); assertEquals("Publication 1", detail.getTitle()); Calendar now = Calendar.getInstance(); now.set(Calendar.SECOND, 0); now.set(Calendar.MILLISECOND, 0); now.set(Calendar.MINUTE, 0); now.set(Calendar.HOUR_OF_DAY, 0); Calendar beginDate = RandomGenerator.getCalendarAfter(now); Calendar endDate = RandomGenerator.getCalendarAfter(beginDate); String name = RandomGenerator.getRandomString(); String description = RandomGenerator.getRandomString(); String creatorId = "" + RandomGenerator.getRandomInt(); int importance = RandomGenerator.getRandomInt(5); String version = RandomGenerator.getRandomString(); String contenu = RandomGenerator.getRandomString(); StringBuilder buffer = new StringBuilder(); int nbKeywords = RandomGenerator.getRandomInt(5) + 2; for (int i = 0; i < nbKeywords; i++) { buffer.append(RandomGenerator.getRandomString()); if (i < (nbKeywords - 1)) { buffer.append(' '); } } String keywords = buffer.toString(); detail.setName(name); detail.setDescription(description); detail.setCreationDate(now.getTime()); detail.setBeginDateAndHour(beginDate.getTime()); detail.setEndDateAndHour(endDate.getTime()); detail.setCreatorId(creatorId); detail.setImportance(importance); detail.setVersion(version); detail.setKeywords(keywords); detail.setContent(contenu); detail.setBeginHour(DateUtil.formatTime(beginDate)); detail.setEndHour(DateUtil.formatTime(endDate)); PublicationDAO.storeRow(con, detail); PublicationDetail result = PublicationDAO.loadRow(con, pk); detail.setUpdateDate(now.getTime()); detail.setUpdaterId(creatorId); detail.setInfoId("0"); assertEquals(detail.getPK(), result.getPK()); assertEquals(detail.getAuthor(), result.getAuthor()); assertEquals(detail.getBeginDate(), result.getBeginDate()); assertEquals(detail.getBeginHour(), result.getBeginHour()); assertEquals(detail.getContent(), result.getContent()); assertEquals(detail.getCreationDate(), result.getCreationDate()); assertEquals(detail.getUpdateDate(), result.getCreationDate()); assertEquals(detail.getCreatorId(), result.getCreatorId()); assertEquals(detail.getDescription(), result.getDescription()); assertEquals(detail.getEndDate(), result.getEndDate()); assertEquals(detail.getEndHour(), result.getEndHour()); assertEquals(detail.getImportance(), result.getImportance()); assertEquals(detail.getInfoId(), result.getInfoId()); assertEquals(detail.getInstanceId(), result.getInstanceId()); assertEquals(detail.getKeywords(), result.getKeywords()); assertEquals(detail.getName(), result.getName()); assertEquals(detail.getStatus(), result.getStatus()); assertEquals(detail.getTitle(), result.getTitle()); } finally { connection.close(); } }
public static void reload() throws Exception { if (dbReloaded) { return; } Connection jdbcConn = null; IDatabaseConnection dbunitConn = null; try { jdbcConn = DriverManager.getConnection(URL, USERNAME, PASSWORD); boolean caseSensitiveTableNames = false; if (URL.contains("postgres")) { dbunitConn = new DatabaseConnection(jdbcConn, SCHEMA); dbunitConn .getConfig() .setProperty(DatabaseConfig.PROPERTY_DATATYPE_FACTORY, new PostgresqlDataTypeFactory()); caseSensitiveTableNames = true; } else if (URL.contains("mysql")) { dbunitConn = new MySqlConnection(jdbcConn, null); if (System.getProperty("os.name").contains("Linux")) { caseSensitiveTableNames = true; } } // else if (URL.contains("oracle")) { // dbunitConn = new OracleConnection(jdbcConn, SCHEMA); // } // else if (URL.contains("sqlserver")) { // dbunitConn = new MsSqlConnection(jdbcConn, SCHEMA); // } // else if (URL.contains("db2")) { // dbunitConn = new Db2Connection(jdbcConn, SCHEMA); // if (System.getProperty("os.name").contains("Linux")) { // caseSensitiveTableNames = true; // } // } else { throw new IllegalStateException("Die Datenbank-URL " + URL + " wird nicht unterstuetzt"); } final ClassLoader cl = Thread.currentThread().getContextClassLoader(); final FlatXmlDataSetBuilder flatXmlDataSetBuilder = new FlatXmlDataSetBuilder(); flatXmlDataSetBuilder.setCaseSensitiveTableNames(caseSensitiveTableNames); FlatXmlDataSet xmlDataset = flatXmlDataSetBuilder.build(cl.getResource(XML_FLAT_DATASET)); DatabaseOperation dbOp = CLEAN_INSERT; // if (URL != null && URL.contains("sqlserver")) { // // Fuer SQL Server ist ein spezieller INSERT-Modus notwendig, // // damit IDENTITY-Spalten eingefuegt werden koennen // dbOp = InsertIdentityOperation.CLEAN_INSERT; // } dbOp.execute(dbunitConn, xmlDataset); } finally { if (dbunitConn != null) dbunitConn.close(); if (jdbcConn != null) jdbcConn.close(); } dbReloaded = true; System.out.println("Die Datenbank " + URL + " wurde neu geladen"); }
/** Test of insertRow method, of class PublicationDAO. */ @Test public void testInsertRow() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); PublicationPK pk = new PublicationPK("500", "kmelia36"); Calendar now = Calendar.getInstance(); now.set(Calendar.SECOND, 0); now.set(Calendar.MILLISECOND, 0); now.set(Calendar.MINUTE, 0); now.set(Calendar.HOUR_OF_DAY, 0); Calendar beginDate = RandomGenerator.getCalendarAfter(now); Calendar endDate = RandomGenerator.getCalendarAfter(beginDate); String name = RandomGenerator.getRandomString(); String description = RandomGenerator.getRandomString(); String creatorId = "" + RandomGenerator.getRandomInt(); int importance = RandomGenerator.getRandomInt(5); String version = RandomGenerator.getRandomString(); String contenu = RandomGenerator.getRandomString(); StringBuilder buffer = new StringBuilder(); int nbKeywords = RandomGenerator.getRandomInt(5) + 2; for (int i = 0; i < nbKeywords; i++) { buffer.append(RandomGenerator.getRandomString()); if (i < (nbKeywords - 1)) { buffer.append(' '); } } String keywords = buffer.toString(); PublicationDetail detail = new PublicationDetail( pk, name, description, now.getTime(), beginDate.getTime(), endDate.getTime(), creatorId, importance, version, keywords, contenu); detail.setBeginHour(DateUtil.formatTime(beginDate)); detail.setEndHour(DateUtil.formatTime(endDate)); PublicationDAO.insertRow(con, detail); PublicationDetail result = PublicationDAO.loadRow(con, pk); detail.setUpdateDate(now.getTime()); detail.setUpdaterId(creatorId); detail.setInfoId("0"); assertEquals(detail.getPK(), result.getPK()); assertEquals(detail.getAuthor(), result.getAuthor()); assertEquals(detail.getBeginDate(), result.getBeginDate()); assertEquals(detail.getBeginHour(), result.getBeginHour()); assertEquals(detail.getContent(), result.getContent()); assertEquals(detail.getCreationDate(), result.getCreationDate()); assertEquals(detail.getUpdateDate(), result.getCreationDate()); assertEquals(detail.getCreatorId(), result.getCreatorId()); assertEquals(detail.getDescription(), result.getDescription()); assertEquals(detail.getEndDate(), result.getEndDate()); assertEquals(detail.getEndHour(), result.getEndHour()); assertEquals(detail.getImportance(), result.getImportance()); assertEquals(detail.getInfoId(), result.getInfoId()); assertEquals(detail.getInstanceId(), result.getInstanceId()); assertEquals(detail.getKeywords(), result.getKeywords()); assertEquals(detail.getName(), result.getName()); assertEquals(detail.getStatus(), result.getStatus()); assertEquals(detail.getTitle(), result.getTitle()); } finally { connection.close(); } }
@Test public void testGetAllPublicationsIDbyUserid() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); String user100 = "100"; // who created pub1 String user200 = "200"; // who updated pub1 and pub2 String pub1Id = "100"; PublicationDetail detail1 = PublicationDAO.loadRow(con, new PublicationPK(pub1Id)); // who created pub1 SocialInformationPublication sp1 = new SocialInformationPublication(new PublicationWithStatus((detail1), false)); assertNotNull("SocialInformationPublication1 must be not null", sp1); List<SocialInformation> list100 = new ArrayList<SocialInformation>(); list100.add(sp1); Date begin = DateUtil.parse("2008/11/01"); Date end = DateUtil.parse("2008/11/30"); List<SocialInformation> list100DOA = PublicationDAO.getAllPublicationsIDbyUserid(con, user100, begin, end); assertEquals("Must be equal", list100.get(0), list100DOA.get(0)); // who created pub2 String user101 = "101"; // who created pub2 String pub2Id = "101"; PublicationDetail detail2 = PublicationDAO.loadRow(con, new PublicationPK(pub2Id)); SocialInformationPublication sp2 = new SocialInformationPublication(new PublicationWithStatus((detail2), false)); assertNotNull("SocialInformationPublication2 must be not null", sp2); List<SocialInformation> list101 = new ArrayList<SocialInformation>(); list101.add(sp2); List<SocialInformation> list101DOA = PublicationDAO.getAllPublicationsIDbyUserid(con, user101, begin, end); assertTrue("Must be equal", list101.get(0).equals(list101DOA.get(0))); // who updated pub1 and pub2 begin = DateUtil.parse("2009/11/01"); end = DateUtil.parse("2009/11/30"); SocialInformationPublication sp1User200 = new SocialInformationPublication(new PublicationWithStatus((detail1), true)); assertNotNull("SocialInformationPublication2 must be not null", sp1User200); SocialInformationPublication sp2User200 = new SocialInformationPublication(new PublicationWithStatus((detail2), true)); assertNotNull("SocialInformationPublication2 must be not null", sp2User200); List<SocialInformation> list200 = new ArrayList<SocialInformation>(); list200.add(sp2User200); list200.add(sp1User200); List<SocialInformation> list200DOA = PublicationDAO.getAllPublicationsIDbyUserid(con, user200, begin, end); assertEquals("Must be equal", list200.get(0), list200DOA.get(0)); assertEquals("Must be equal", list200.get(1), list200DOA.get(1)); // test nbr of elements list200DOA = PublicationDAO.getAllPublicationsIDbyUserid(con, user200, begin, end); assertEquals("Must be equal", list200.get(0), list200DOA.get(0)); List<String> options = new ArrayList<String>(); options.add("kmelia200"); List<String> myContactsIds = new ArrayList<String>(); myContactsIds.add(user100); myContactsIds.add(user200); list200DOA = PublicationDAO.getSocialInformationsListOfMyContacts( con, myContactsIds, options, begin, end); assertNotNull("SocialInformationPublication of my contact must be not null", list200DOA); assertTrue( "SocialInformationPublication of my contact must be not empty", !list200DOA.isEmpty()); } finally { connection.close(); } }
/** Test of selectByFatherPK method, of class PublicationDAO. */ @Test public void testSelectByFatherPK_5args() throws Exception { IDatabaseConnection connection = getConnection(); try { Connection con = connection.getConnection(); NodePK fatherPK = new NodePK("110", "kmelia200"); String sorting = null; boolean filterOnVisibilityPeriod = false; String userId = "100"; Collection<PublicationDetail> result = PublicationDAO.selectByFatherPK(con, fatherPK, sorting, filterOnVisibilityPeriod, userId); assertNotNull(result); assertEquals(1, result.size()); Iterator<PublicationDetail> iter = result.iterator(); PublicationDetail detail = iter.next(); PublicationPK primaryKey = new PublicationPK("100", "kmelia200"); assertEquals(primaryKey, detail.getPK()); assertEquals("Homer Simpson", detail.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(detail.getBeginDate())); assertEquals("00:00", detail.getBeginHour()); assertEquals("Contenu de la publication 1", detail.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(detail.getCreationDate())); assertEquals("100", detail.getCreatorId()); assertEquals("Première publication de test", detail.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(detail.getEndDate())); assertEquals("23:59", detail.getEndHour()); assertEquals(1, detail.getImportance()); assertEquals("0", detail.getInfoId()); assertEquals("kmelia200", detail.getInstanceId()); assertEquals("test", detail.getKeywords()); assertEquals("Publication 1", detail.getName()); assertEquals("Valid", detail.getStatus()); assertEquals("300", detail.getValidatorId()); assertEquals("Publication 1", detail.getTitle()); filterOnVisibilityPeriod = true; result = PublicationDAO.selectByFatherPK(con, fatherPK, sorting, filterOnVisibilityPeriod, userId); assertNotNull(result); assertEquals(1, result.size()); iter = result.iterator(); detail = iter.next(); primaryKey = new PublicationPK("100", "kmelia200"); assertEquals(primaryKey, detail.getPK()); assertEquals("Homer Simpson", detail.getAuthor()); assertEquals("2009/10/18", DateUtil.formatDate(detail.getBeginDate())); assertEquals("00:00", detail.getBeginHour()); assertEquals("Contenu de la publication 1", detail.getContent()); assertEquals("2008/11/18", DateUtil.formatDate(detail.getCreationDate())); assertEquals("100", detail.getCreatorId()); assertEquals("Première publication de test", detail.getDescription()); assertEquals("2020/12/18", DateUtil.formatDate(detail.getEndDate())); assertEquals("23:59", detail.getEndHour()); assertEquals(1, detail.getImportance()); assertEquals("0", detail.getInfoId()); assertEquals("kmelia200", detail.getInstanceId()); assertEquals("test", detail.getKeywords()); assertEquals("Publication 1", detail.getName()); assertEquals("Valid", detail.getStatus()); assertEquals("300", detail.getValidatorId()); assertEquals("Publication 1", detail.getTitle()); } finally { connection.close(); } }
@AfterMethod(alwaysRun = true) public void setDownTest() throws Exception { dbConn.close(); }