Search in sources :

Example 6 with IDatabaseConnection

use of org.dbunit.database.IDatabaseConnection in project head by mifos.

the class AcceptanceDatabaseTestUtils method deleteDataFromTable.

public void deleteDataFromTable(String tableName, DriverManagerDataSource dataSource) throws IOException, DataSetException, SQLException, DatabaseUnitException {
    StringReader dataSetXmlStream = new StringReader("<dataset><" + tableName + "/></dataset>");
    IDataSet dataSet = new FlatXmlDataSet(dataSetXmlStream);
    IDatabaseConnection databaseConnection = new DatabaseDataSourceConnection(dataSource);
    databaseConnection.getConfig().setProperty(DatabaseConfig.FEATURE_CASE_SENSITIVE_TABLE_NAMES, Boolean.TRUE);
    DatabaseOperation.CLEAN_INSERT.execute(databaseConnection, dataSet);
}
Also used : FlatXmlDataSet(org.dbunit.dataset.xml.FlatXmlDataSet) DatabaseDataSourceConnection(org.dbunit.database.DatabaseDataSourceConnection) StringReader(java.io.StringReader) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) IDataSet(org.dbunit.dataset.IDataSet)

Example 7 with IDatabaseConnection

use of org.dbunit.database.IDatabaseConnection in project head by mifos.

the class DatabaseTestUtils method verifyTable.

/**
     * Verify that a database table matches a dataSet table. dataSetXml must be formatted as a DBUnit
     * xml dataset. This method can be safely invoked inside a Spring-managed transaction.
     * @param dataSetXml
     * @param tableName
     * @param dataSource
     * @throws Exception
     */
// one of the dependent methods throws Exception
@SuppressWarnings("PMD.SignatureDeclareThrowsException")
public void verifyTable(String dataSetXml, String tableName, DriverManagerDataSource dataSource) throws Exception {
    Connection jdbcConnection = null;
    StringReader dataSetXmlStream = new StringReader(dataSetXml);
    try {
        jdbcConnection = DataSourceUtils.getConnection(dataSource);
        IDatabaseTester databaseTester = new DataSourceDatabaseTester(dataSource);
        IDatabaseConnection databaseConnection = databaseTester.getConnection();
        databaseConnection.getConfig().setProperty(DatabaseConfig.FEATURE_CASE_SENSITIVE_TABLE_NAMES, Boolean.TRUE);
        IDataSet databaseDataSet = databaseConnection.createDataSet();
        ITable actualTable = databaseDataSet.getTable(tableName);
        IDataSet expectedDataSet = new FlatXmlDataSet(dataSetXmlStream);
        ITable expectedTable = expectedDataSet.getTable(tableName);
        Assertion.assertEqualsIgnoreCols(expectedTable, actualTable, new String[] { "id" });
    } finally {
        if (null != jdbcConnection) {
            jdbcConnection.close();
        }
        DataSourceUtils.releaseConnection(jdbcConnection, dataSource);
    }
}
Also used : FlatXmlDataSet(org.dbunit.dataset.xml.FlatXmlDataSet) Connection(java.sql.Connection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) DatabaseConnection(org.dbunit.database.DatabaseConnection) StringReader(java.io.StringReader) IDatabaseTester(org.dbunit.IDatabaseTester) ITable(org.dbunit.dataset.ITable) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) IDataSet(org.dbunit.dataset.IDataSet) DataSourceDatabaseTester(org.dbunit.DataSourceDatabaseTester)

Example 8 with IDatabaseConnection

use of org.dbunit.database.IDatabaseConnection in project head by mifos.

the class DbUnitDataImportExport method loadDataFromFile.

private void loadDataFromFile(String fileName) throws DatabaseUnitException, SQLException, IOException, ClassNotFoundException {
    Class.forName("com.mysql.jdbc.Driver");
    Connection jdbcConnection = null;
    boolean enableColumnSensing = true;
    IDataSet dataSet = new FlatXmlDataSet(new File(fileName), false, enableColumnSensing);
    try {
        jdbcConnection = DriverManager.getConnection("jdbc:mysql://localhost/" + databaseName + "?sessionVariables=FOREIGN_KEY_CHECKS=0", user, password);
        IDatabaseConnection databaseConnection = new DatabaseConnection(jdbcConnection);
        databaseConnection.getConfig().setProperty(DatabaseConfig.FEATURE_CASE_SENSITIVE_TABLE_NAMES, Boolean.TRUE);
        DatabaseOperation.CLEAN_INSERT.execute(databaseConnection, dataSet);
    } finally {
        if (jdbcConnection != null) {
            jdbcConnection.close();
        }
    }
}
Also used : FlatXmlDataSet(org.dbunit.dataset.xml.FlatXmlDataSet) Connection(java.sql.Connection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) DatabaseConnection(org.dbunit.database.DatabaseConnection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) DatabaseConnection(org.dbunit.database.DatabaseConnection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) IDataSet(org.dbunit.dataset.IDataSet) File(java.io.File)

Example 9 with IDatabaseConnection

use of org.dbunit.database.IDatabaseConnection in project head by mifos.

the class DbUnitDataImportExport method dumpData.

public void dumpData(String fileName) throws ClassNotFoundException, SQLException, DatabaseUnitException, FileNotFoundException, IOException {
    // database connection
    Class.forName("com.mysql.jdbc.Driver");
    Connection jdbcConnection = null;
    IDataSet fullDataSet;
    try {
        jdbcConnection = DriverManager.getConnection("jdbc:mysql://localhost/" + databaseName, user, password);
        IDatabaseConnection connection = new DatabaseConnection(jdbcConnection);
        connection.getConfig().setProperty(DatabaseConfig.FEATURE_CASE_SENSITIVE_TABLE_NAMES, Boolean.TRUE);
        // sequenced data should not be necessary when foreign key constraints
        // are turned off on the connection...
        fullDataSet = connection.createDataSet();
        FlatXmlDataSet.write(fullDataSet, new FileOutputStream(fileName));
    } finally {
        if (jdbcConnection != null) {
            jdbcConnection.close();
        }
    }
}
Also used : FileOutputStream(java.io.FileOutputStream) Connection(java.sql.Connection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) DatabaseConnection(org.dbunit.database.DatabaseConnection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) DatabaseConnection(org.dbunit.database.DatabaseConnection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) IDataSet(org.dbunit.dataset.IDataSet)

Example 10 with IDatabaseConnection

use of org.dbunit.database.IDatabaseConnection in project ORCID-Source by ORCID.

the class DBUnitTest method getDBConnection.

public static IDatabaseConnection getDBConnection() throws Exception {
    DriverManagerDataSource dataSource = (DriverManagerDataSource) context.getBean("simpleDataSource");
    Connection jdbcConnection = dataSource.getConnection();
    IDatabaseConnection connection = new DatabaseConnection(jdbcConnection);
    connection.getConfig().setProperty(DatabaseConfig.PROPERTY_DATATYPE_FACTORY, new CustomDataTypeFactory());
    return connection;
}
Also used : DriverManagerDataSource(org.springframework.jdbc.datasource.DriverManagerDataSource) Connection(java.sql.Connection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) DatabaseConnection(org.dbunit.database.DatabaseConnection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection) DatabaseConnection(org.dbunit.database.DatabaseConnection) IDatabaseConnection(org.dbunit.database.IDatabaseConnection)

Aggregations

IDatabaseConnection (org.dbunit.database.IDatabaseConnection)17 IDataSet (org.dbunit.dataset.IDataSet)11 DatabaseConnection (org.dbunit.database.DatabaseConnection)9 Connection (java.sql.Connection)8 SQLException (java.sql.SQLException)4 DatabaseUnitException (org.dbunit.DatabaseUnitException)4 ITable (org.dbunit.dataset.ITable)3 FlatXmlDataSet (org.dbunit.dataset.xml.FlatXmlDataSet)3 FileOutputStream (java.io.FileOutputStream)2 StringReader (java.io.StringReader)2 DataSourceDatabaseTester (org.dbunit.DataSourceDatabaseTester)2 IDatabaseTester (org.dbunit.IDatabaseTester)2 ImmutableList (com.google.common.collect.ImmutableList)1 Lists.asList (com.google.common.collect.Lists.asList)1 Lists.newArrayList (com.google.common.collect.Lists.newArrayList)1 File (java.io.File)1 FileInputStream (java.io.FileInputStream)1 IOException (java.io.IOException)1 InputStream (java.io.InputStream)1 ArrayList (java.util.ArrayList)1