aboutsummaryrefslogtreecommitdiffstats
path: root/sonar-core/src
diff options
context:
space:
mode:
authorDavid Gageot <david@gageot.net>2012-06-19 17:33:09 +0200
committerDavid Gageot <david@gageot.net>2012-06-19 17:54:06 +0200
commit061451b53d8a8fc2e3f4716705d6c6a28689baa8 (patch)
treee416986c1d63c56a1427ebf70e1e78dd5a74498b /sonar-core/src
parentdc1ff5ccbf40e2a5360fcc23f4bab843bad52cf7 (diff)
downloadsonarqube-061451b53d8a8fc2e3f4716705d6c6a28689baa8.tar.gz
sonarqube-061451b53d8a8fc2e3f4716705d6c6a28689baa8.zip
Make it impossible to use AbstractDbUnitTestCase for iBatis tests
Diffstat (limited to 'sonar-core/src')
-rw-r--r--sonar-core/src/test/java/org/sonar/jpa/test/AbstractDbUnitTestCase.java78
1 files changed, 22 insertions, 56 deletions
diff --git a/sonar-core/src/test/java/org/sonar/jpa/test/AbstractDbUnitTestCase.java b/sonar-core/src/test/java/org/sonar/jpa/test/AbstractDbUnitTestCase.java
index 34c696e283f..3e27d0ccb38 100644
--- a/sonar-core/src/test/java/org/sonar/jpa/test/AbstractDbUnitTestCase.java
+++ b/sonar-core/src/test/java/org/sonar/jpa/test/AbstractDbUnitTestCase.java
@@ -25,23 +25,30 @@ import org.dbunit.DataSourceDatabaseTester;
import org.dbunit.DatabaseUnitException;
import org.dbunit.IDatabaseTester;
import org.dbunit.database.IDatabaseConnection;
-import org.dbunit.dataset.*;
+import org.dbunit.dataset.Column;
+import org.dbunit.dataset.CompositeDataSet;
+import org.dbunit.dataset.DataSetException;
+import org.dbunit.dataset.IDataSet;
+import org.dbunit.dataset.ITable;
+import org.dbunit.dataset.ITableMetaData;
+import org.dbunit.dataset.ReplacementDataSet;
import org.dbunit.dataset.filter.DefaultColumnFilter;
import org.dbunit.dataset.xml.FlatXmlDataSet;
import org.dbunit.operation.DatabaseOperation;
-import org.junit.*;
+import org.junit.After;
+import org.junit.AfterClass;
+import org.junit.Before;
+import org.junit.BeforeClass;
import org.sonar.api.database.DatabaseSession;
import org.sonar.core.persistence.Database;
import org.sonar.core.persistence.DatabaseCommands;
import org.sonar.core.persistence.InMemoryDatabase;
-import org.sonar.core.persistence.MyBatis;
import org.sonar.jpa.session.DatabaseSessionFactory;
import org.sonar.jpa.session.DefaultDatabaseConnector;
import org.sonar.jpa.session.JpaDatabaseSession;
import org.sonar.jpa.session.MemoryDatabaseConnector;
import java.io.InputStream;
-import java.io.StringWriter;
import java.sql.ResultSet;
import java.sql.SQLException;
@@ -51,23 +58,19 @@ import static org.junit.Assert.fail;
* Heavily duplicates DaoTestCase as long as Hibernate is in use.
*/
public abstract class AbstractDbUnitTestCase {
+ private static Database database;
+ private static DefaultDatabaseConnector dbConnector;
+ private static DatabaseCommands databaseCommands;
private JpaDatabaseSession session;
private IDatabaseTester databaseTester;
private IDatabaseConnection connection;
- private static Database database;
- private static MyBatis myBatis;
- private static DefaultDatabaseConnector dbConnector;
- private static DatabaseCommands databaseCommands;
@BeforeClass
public static void startDatabase() throws Exception {
database = new InMemoryDatabase();
database.start();
- myBatis = new MyBatis(database);
- myBatis.start();
-
dbConnector = new MemoryDatabaseConnector(database);
dbConnector.start();
@@ -76,7 +79,7 @@ public abstract class AbstractDbUnitTestCase {
@Before
public void startConnection() throws Exception {
- databaseCommands.truncateDatabase(myBatis.openSession().getConnection());
+ databaseCommands.truncateDatabase(database.getDataSource().getConnection());
databaseTester = new DataSourceDatabaseTester(database.getDataSource());
session = new JpaDatabaseSession(dbConnector);
@@ -99,10 +102,6 @@ public abstract class AbstractDbUnitTestCase {
database.stop();
}
- protected MyBatis getMyBatis() {
- return myBatis;
- }
-
public DatabaseSession getSession() {
return session;
}
@@ -140,7 +139,7 @@ public abstract class AbstractDbUnitTestCase {
}
}
- protected final void setupData(InputStream... dataSetStream) {
+ private final void setupData(InputStream... dataSetStream) {
try {
IDataSet[] dataSets = new IDataSet[dataSetStream.length];
for (int i = 0; i < dataSetStream.length; i++) {
@@ -180,10 +179,10 @@ public abstract class AbstractDbUnitTestCase {
}
protected final void checkTables(String testName, String... tables) {
- checkTablesWithExcludedColumns(testName, new String[]{}, tables);
+ checkTables(testName, new String[0], tables);
}
- protected final void checkTablesWithExcludedColumns(String testName, String[] excludedColumnNames, String... tables) {
+ protected final void checkTables(String testName, String[] excludedColumnNames, String... tables) {
getSession().commit();
try {
IDataSet dataSet = getCurrentDataSet();
@@ -200,17 +199,7 @@ public abstract class AbstractDbUnitTestCase {
}
}
- protected final void assertEmptyTables(String... emptyTables) {
- for (String table : emptyTables) {
- try {
- Assert.assertEquals(0, getCurrentDataSet().getTable(table).getRowCount());
- } catch (DataSetException e) {
- throw translateException("Error while checking results", e);
- }
- }
- }
-
- protected final IDataSet getExpectedData(String testName) {
+ private final IDataSet getExpectedData(String testName) {
String className = getClass().getName();
className = String.format("/%s/%s-result.xml", className.replace(".", "/"), testName);
@@ -222,7 +211,7 @@ public abstract class AbstractDbUnitTestCase {
}
}
- protected final IDataSet getData(InputStream stream) {
+ private final IDataSet getData(InputStream stream) {
try {
ReplacementDataSet dataSet = new ReplacementDataSet(new FlatXmlDataSet(stream));
dataSet.addReplacementObject("[null]", null);
@@ -232,7 +221,7 @@ public abstract class AbstractDbUnitTestCase {
}
}
- protected final IDataSet getCurrentDataSet() {
+ private final IDataSet getCurrentDataSet() {
try {
return connection.createDataSet();
} catch (SQLException e) {
@@ -240,37 +229,14 @@ public abstract class AbstractDbUnitTestCase {
}
}
- protected String getCurrentDataSetAsXML() {
- return getDataSetAsXML(getCurrentDataSet());
- }
-
- protected String getDataSetAsXML(IDataSet dataset) {
- try {
- StringWriter writer = new StringWriter();
- FlatXmlDataSet.write(dataset, writer);
- return writer.getBuffer().toString();
- } catch (Exception e) {
- throw translateException("Could not build XML from dataset", e);
- }
- }
-
private static RuntimeException translateException(String msg, Exception cause) {
RuntimeException runtimeException = new RuntimeException(String.format("%s: [%s] %s", msg, cause.getClass().getName(), cause.getMessage()));
runtimeException.setStackTrace(cause.getStackTrace());
return runtimeException;
}
- protected Long getHQLCount(final Class<?> hqlClass) {
+ protected Long getHQLCount(Class<?> hqlClass) {
String hqlCount = "SELECT count(o) from " + hqlClass.getSimpleName() + " o";
return (Long) getSession().createQuery(hqlCount).getSingleResult();
}
-
- protected IDatabaseConnection getConnection() {
- return connection;
- }
-
- protected IDatabaseTester getDatabaseTester() {
- return databaseTester;
- }
-
}