use of org.dbunit.dataset.ITable in project SSM by Intel-bigdata.
the class TestTableAggregator method testAggregate.
@Test
public void testAggregate() throws Exception {
AccessCountTableAggregator aggregator = new AccessCountTableAggregator(null);
createTables(databaseTester.getConnection());
IDataSet dataSet = new XmlDataSet(getClass().getClassLoader().getResourceAsStream("accessCountTable.xml"));
databaseTester.setDataSet(dataSet);
databaseTester.onSetup();
AccessCountTable result = new AccessCountTable("actual", 0L, 0L, TimeGranularity.MINUTE);
AccessCountTable table1 = new AccessCountTable("table1", 0L, 0L, TimeGranularity.SECOND);
AccessCountTable table2 = new AccessCountTable("table2", 0L, 0L, TimeGranularity.SECOND);
AccessCountTable table3 = new AccessCountTable("table3", 0L, 0L, TimeGranularity.SECOND);
String aggregateStatement = aggregator.aggregateSQLStatement(result, Lists.newArrayList(table1, table2, table3));
Statement statement = databaseTester.getConnection().getConnection().createStatement();
statement.execute(aggregateStatement);
statement.close();
ITable actual = databaseTester.getConnection().createTable(result.getTableName());
ITable expect = databaseTester.getDataSet().getTable("expect");
Assertion.assertEquals(expect, actual);
}
use of org.dbunit.dataset.ITable in project sharding-jdbc by dangdangdotcom.
the class AbstractDBUnitTest method assertDataSet.
protected void assertDataSet(final String expectedDataSetFile, final Connection connection, final String actualTableName, final String sql) throws SQLException, DatabaseUnitException {
try (Connection conn = connection) {
ITable actualTable = getConnection(conn).createQueryTable(actualTableName, sql);
IDataSet expectedDataSet = new FlatXmlDataSetBuilder().build(new InputStreamReader(AbstractDBUnitTest.class.getClassLoader().getResourceAsStream(expectedDataSetFile)));
assertEquals(expectedDataSet.getTable(actualTableName), actualTable);
}
}
use of org.dbunit.dataset.ITable in project sharding-jdbc by dangdangdotcom.
the class AbstractDBUnitTest method assertDataSet.
protected void assertDataSet(final String expectedDataSetFile, final Connection connection, final String actualTableName, final String sql, final Object... params) throws SQLException, DatabaseUnitException {
try (Connection conn = connection;
PreparedStatement ps = conn.prepareStatement(sql)) {
int i = 1;
for (Object each : params) {
ps.setObject(i++, each);
}
ITable actualTable = getConnection(connection).createTable(actualTableName, ps);
IDataSet expectedDataSet = new FlatXmlDataSetBuilder().build(new InputStreamReader(AbstractDBUnitTest.class.getClassLoader().getResourceAsStream(expectedDataSetFile)));
assertEquals(expectedDataSet.getTable(actualTableName), actualTable);
}
}
use of org.dbunit.dataset.ITable in project head by mifos.
the class DbUnitUtilities method verifyTable.
/**
* Compare two tables using DbUnit DataSets
* @param tableName
* @param databaseDataSet
* @param expectedDataSet
* @throws DataSetException
* @throws DatabaseUnitException
*/
public void verifyTable(String tableName, IDataSet databaseDataSet, IDataSet expectedDataSet) throws DataSetException, DatabaseUnitException {
Assert.assertNotNull("Didn't find requested table [" + tableName + "] in columnsToIgnoreWhenVerifyingTables map.", columnsToIgnoreWhenVerifyingTables.get(tableName));
ITable expectedTable = getCaseInsensitiveTable(tableName, expectedDataSet);
ITable actualTable = getCaseInsensitiveTable(tableName, databaseDataSet);
actualTable = DefaultColumnFilter.includedColumnsTable(actualTable, expectedTable.getTableMetaData().getColumns());
try {
Assertion.assertEqualsIgnoreCols(expectedTable, actualTable, columnsToIgnoreWhenVerifyingTables.get(tableName));
} catch (AssertionError e) {
throw new DatabaseUnitException(getTableDiff(expectedTable, actualTable), e);
}
}
use of org.dbunit.dataset.ITable in project sonarqube by SonarSource.
the class AbstractDbTester method assertDbUnit.
public void assertDbUnit(Class testClass, String filename, String[] excludedColumnNames, String... tables) {
IDatabaseConnection connection = null;
try {
connection = dbUnitConnection();
IDataSet dataSet = connection.createDataSet();
String path = "/" + testClass.getName().replace('.', '/') + "/" + filename;
InputStream inputStream = testClass.getResourceAsStream(path);
if (inputStream == null) {
throw new IllegalStateException(String.format("File '%s' does not exist", path));
}
IDataSet expectedDataSet = dbUnitDataSet(inputStream);
for (String table : tables) {
DiffCollectingFailureHandler diffHandler = new DiffCollectingFailureHandler();
ITable filteredTable = DefaultColumnFilter.excludedColumnsTable(dataSet.getTable(table), excludedColumnNames);
ITable filteredExpectedTable = DefaultColumnFilter.excludedColumnsTable(expectedDataSet.getTable(table), excludedColumnNames);
Assertion.assertEquals(filteredExpectedTable, filteredTable, diffHandler);
// Evaluate the differences and ignore some column values
List diffList = diffHandler.getDiffList();
for (Object o : diffList) {
Difference diff = (Difference) o;
if (!"[ignore]".equals(diff.getExpectedValue())) {
throw new DatabaseUnitException(diff.toString());
}
}
}
} catch (DatabaseUnitException e) {
e.printStackTrace();
fail(e.getMessage());
} catch (Exception e) {
throw translateException("Error while checking results", e);
} finally {
closeQuietly(connection);
}
}
Aggregations