TSK-860: Beautify the build log by correcting DB operations

This commit is contained in:
BVier 2019-07-03 11:18:49 +02:00 committed by Mustapha Zorgati
parent 4b69f4bbe8
commit fa5dc48155
7 changed files with 16 additions and 27 deletions

View File

@ -88,12 +88,17 @@ public class DbSchemaCreator {
private boolean isSchemaPreexisting(Connection connection) { private boolean isSchemaPreexisting(Connection connection) {
ScriptRunner runner = getScriptRunnerInstance(connection); ScriptRunner runner = getScriptRunnerInstance(connection);
StringWriter errorWriter = new StringWriter();
runner.setErrorLogWriter(new PrintWriter(errorWriter));
try { try {
BufferedReader reader = new BufferedReader(new InputStreamReader(this.getClass() BufferedReader reader = new BufferedReader(new InputStreamReader(this.getClass()
.getResourceAsStream(selectDbSchemaDetectionScript(connection.getMetaData().getDatabaseProductName())))); .getResourceAsStream(selectDbSchemaDetectionScript(connection.getMetaData().getDatabaseProductName()))));
runner.runScript(getSqlSchemaNameParsed(reader)); runner.runScript(getSqlSchemaNameParsed(reader));
} catch (Exception e) { } catch (Exception e) {
LOGGER.debug("Schema does not exist."); LOGGER.debug("Schema does not exist.");
if (!errorWriter.toString().trim().isEmpty()) {
LOGGER.debug(errorWriter.toString());
}
return false; return false;
} }
LOGGER.debug("Schema does exist."); LOGGER.debug("Schema does exist.");

View File

@ -303,10 +303,10 @@ public class TaskanaEngineImpl implements TaskanaEngine {
@Override @Override
public void checkRoleMembership(TaskanaRole... roles) throws NotAuthorizedException { public void checkRoleMembership(TaskanaRole... roles) throws NotAuthorizedException {
if (!isUserInRole(roles)) { if (!isUserInRole(roles)) {
if (LOGGER.isErrorEnabled()) { if (LOGGER.isDebugEnabled()) {
String accessIds = LoggerUtils.listToString(CurrentUserContext.getAccessIds()); String accessIds = LoggerUtils.listToString(CurrentUserContext.getAccessIds());
String rolesAsString = Arrays.toString(roles); String rolesAsString = Arrays.toString(roles);
LOGGER.error("Throwing NotAuthorizedException because accessIds {} are not member of roles {}", LOGGER.debug("Throwing NotAuthorizedException because accessIds {} are not member of roles {}",
accessIds, accessIds,
rolesAsString); rolesAsString);
} }

View File

@ -33,19 +33,18 @@ public abstract class AbstractAccTest {
protected static TaskanaEngineConfiguration taskanaEngineConfiguration; protected static TaskanaEngineConfiguration taskanaEngineConfiguration;
protected static TaskanaEngine taskanaEngine; protected static TaskanaEngine taskanaEngine;
private static DBCleaner cleaner = new DBCleaner();
protected static TestDataGenerator testDataGenerator = new TestDataGenerator();
@BeforeClass @BeforeClass
public static void setupTest() throws Exception { public static void setupTest() throws Exception {
resetDb(); resetDb(false);
} }
public static void resetDb(boolean... dropTables) throws SQLException, IOException { public static void resetDb(boolean dropTables) throws SQLException, IOException {
DataSource dataSource = TaskanaEngineConfigurationTest.getDataSource(); DataSource dataSource = TaskanaEngineConfigurationTest.getDataSource();
DBCleaner cleaner = new DBCleaner(); if (dropTables) {
if (dropTables == null || dropTables.length == 0) { cleaner.clearDb(dataSource, dropTables);
cleaner.clearDb(dataSource, true);
} else {
cleaner.clearDb(dataSource, dropTables[0]);
} }
dataSource = TaskanaEngineConfigurationTest.getDataSource(); dataSource = TaskanaEngineConfigurationTest.getDataSource();
taskanaEngineConfiguration = new TaskanaEngineConfiguration(dataSource, false, taskanaEngineConfiguration = new TaskanaEngineConfiguration(dataSource, false,
@ -53,7 +52,6 @@ public abstract class AbstractAccTest {
taskanaEngine = taskanaEngineConfiguration.buildTaskanaEngine(); taskanaEngine = taskanaEngineConfiguration.buildTaskanaEngine();
taskanaEngine.setConnectionManagementMode(ConnectionManagementMode.AUTOCOMMIT); taskanaEngine.setConnectionManagementMode(ConnectionManagementMode.AUTOCOMMIT);
cleaner.clearDb(dataSource, false); cleaner.clearDb(dataSource, false);
TestDataGenerator testDataGenerator = new TestDataGenerator();
testDataGenerator.generateTestData(dataSource); testDataGenerator.generateTestData(dataSource);
} }

View File

@ -33,8 +33,6 @@ public class AbstractReportAccTest {
private static void resetDb() throws SQLException, IOException { private static void resetDb() throws SQLException, IOException {
DataSource dataSource = TaskanaEngineConfigurationTest.getDataSource(); DataSource dataSource = TaskanaEngineConfigurationTest.getDataSource();
DBCleaner cleaner = new DBCleaner(); DBCleaner cleaner = new DBCleaner();
cleaner.clearDb(dataSource, true);
dataSource = TaskanaEngineConfigurationTest.getDataSource();
taskanaEngineConfiguration = new TaskanaEngineConfiguration(dataSource, false, taskanaEngineConfiguration = new TaskanaEngineConfiguration(dataSource, false,
TaskanaEngineConfigurationTest.getSchemaName()); TaskanaEngineConfigurationTest.getSchemaName());
taskanaEngineConfiguration.setGermanPublicHolidaysEnabled(false); taskanaEngineConfiguration.setGermanPublicHolidaysEnabled(false);

View File

@ -159,12 +159,13 @@ public class DeleteWorkbasketAccTest extends AbstractAccTest {
workbasket.setOrgLevel1("company"); workbasket.setOrgLevel1("company");
workbasket = workbasketService.createWorkbasket(workbasket); workbasket = workbasketService.createWorkbasket(workbasket);
boolean failed = false;
try { try {
workbasketService.deleteWorkbasket(workbasket.getId()); workbasketService.deleteWorkbasket(workbasket.getId());
} catch (Exception e) { } catch (Exception e) {
// TODO Auto-generated catch block failed = true;
e.printStackTrace();
} }
assertTrue(failed);
} }
@WithAccessId(userName = "teamlead_2", groupNames = {"businessadmin"}) @WithAccessId(userName = "teamlead_2", groupNames = {"businessadmin"})

View File

@ -13,7 +13,6 @@ import javax.sql.DataSource;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Before; import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
@ -72,12 +71,6 @@ public class TaskServiceImplIntAutocommitTest {
private ClassificationService classificationService; private ClassificationService classificationService;
private WorkbasketService workbasketService; private WorkbasketService workbasketService;
@BeforeClass
public static void resetDb() {
DataSource ds = TaskanaEngineConfigurationTest.getDataSource();
DBCleaner cleaner = new DBCleaner();
cleaner.clearDb(ds, true);
}
@Before @Before
public void setup() throws SQLException { public void setup() throws SQLException {
@ -113,7 +106,6 @@ public class TaskServiceImplIntAutocommitTest {
task.setClassificationKey(classification.getKey()); task.setClassificationKey(classification.getKey());
task.setPrimaryObjRef(JunitHelper.createDefaultObjRef()); task.setPrimaryObjRef(JunitHelper.createDefaultObjRef());
task = taskServiceImpl.createTask(task); task = taskServiceImpl.createTask(task);
// skanaEngineImpl.getSqlSession().commit(); // needed so that the change is visible in the other session
TaskanaEngine te2 = taskanaEngineConfiguration.buildTaskanaEngine(); TaskanaEngine te2 = taskanaEngineConfiguration.buildTaskanaEngine();
TaskServiceImpl taskServiceImpl2 = (TaskServiceImpl) te2.getTaskService(); TaskServiceImpl taskServiceImpl2 = (TaskServiceImpl) te2.getTaskService();
@ -157,8 +149,6 @@ public class TaskServiceImplIntAutocommitTest {
WorkbasketNotFoundException, ClassificationNotFoundException, ClassificationAlreadyExistException, WorkbasketNotFoundException, ClassificationNotFoundException, ClassificationAlreadyExistException,
TaskAlreadyExistException, InvalidWorkbasketException, InvalidArgumentException, TaskAlreadyExistException, InvalidWorkbasketException, InvalidArgumentException,
WorkbasketAlreadyExistException, DomainNotFoundException { WorkbasketAlreadyExistException, DomainNotFoundException {
DBCleaner cleaner = new DBCleaner();
cleaner.clearDb(TaskanaEngineConfiguration.createDefaultDataSource(), false);
TaskanaEngineConfiguration taskanaEngineConfiguration = new TaskanaEngineConfiguration(null, false, false, TaskanaEngineConfiguration taskanaEngineConfiguration = new TaskanaEngineConfiguration(null, false, false,
null); null);
TaskanaEngine te = taskanaEngineConfiguration.buildTaskanaEngine(); TaskanaEngine te = taskanaEngineConfiguration.buildTaskanaEngine();

View File

@ -98,7 +98,6 @@ public class TaskServiceImplIntExplicitTest {
taskanaEngineImpl.setConnectionManagementMode(ConnectionManagementMode.EXPLICIT); taskanaEngineImpl.setConnectionManagementMode(ConnectionManagementMode.EXPLICIT);
workbasketService = taskanaEngine.getWorkbasketService(); workbasketService = taskanaEngine.getWorkbasketService();
cleaner = new DBCleaner(); cleaner = new DBCleaner();
cleaner.clearDb(dataSource, true);
DbSchemaCreator creator = new DbSchemaCreator(dataSource, dataSource.getConnection().getSchema()); DbSchemaCreator creator = new DbSchemaCreator(dataSource, dataSource.getConnection().getSchema());
creator.run(); creator.run();
} }
@ -181,8 +180,6 @@ public class TaskServiceImplIntExplicitTest {
TaskAlreadyExistException, InvalidWorkbasketException, InvalidArgumentException, TaskAlreadyExistException, InvalidWorkbasketException, InvalidArgumentException,
WorkbasketAlreadyExistException, DomainNotFoundException { WorkbasketAlreadyExistException, DomainNotFoundException {
DataSource ds = TaskanaEngineConfiguration.createDefaultDataSource(); DataSource ds = TaskanaEngineConfiguration.createDefaultDataSource();
DBCleaner cleaner = new DBCleaner();
cleaner.clearDb(ds, false);
TaskanaEngineConfiguration taskanaEngineConfiguration = new TaskanaEngineConfiguration(ds, false, false, TaskanaEngineConfiguration taskanaEngineConfiguration = new TaskanaEngineConfiguration(ds, false, false,
null); null);
TaskanaEngine te = taskanaEngineConfiguration.buildTaskanaEngine(); TaskanaEngine te = taskanaEngineConfiguration.buildTaskanaEngine();