TSK-1748: Review Findings
This commit is contained in:
parent
1c7fdea0ce
commit
0e78a95f1b
|
@ -2,6 +2,7 @@ package pro.taskana.task.internal.jobs.helper;
|
|||
|
||||
import java.sql.Connection;
|
||||
import java.sql.SQLException;
|
||||
import java.util.Objects;
|
||||
|
||||
import pro.taskana.common.api.TaskanaEngine;
|
||||
import pro.taskana.common.api.exceptions.SystemException;
|
||||
|
@ -13,7 +14,7 @@ public class SqlConnectionRunner {
|
|||
private final TaskanaEngine taskanaEngine;
|
||||
|
||||
public SqlConnectionRunner(TaskanaEngine taskanaEngine) {
|
||||
this.taskanaEngine = taskanaEngine;
|
||||
this.taskanaEngine = Objects.requireNonNull(taskanaEngine, "TaskanaEngine may not be null");
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -12,7 +12,9 @@ import org.junit.jupiter.api.Test;
|
|||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
|
||||
import pro.taskana.common.api.exceptions.SystemException;
|
||||
import pro.taskana.common.api.exceptions.TaskanaRuntimeException;
|
||||
import pro.taskana.common.test.security.JaasExtension;
|
||||
import pro.taskana.common.test.security.WithAccessId;
|
||||
import pro.taskana.task.internal.jobs.helper.SqlConnectionRunner;
|
||||
|
||||
/** Acceptance test for all "jobs tasks runner" scenarios. */
|
||||
|
@ -59,4 +61,30 @@ class SqlConnectionRunnerAccTest extends AbstractAccTest {
|
|||
}))
|
||||
.isInstanceOf(SystemException.class);
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithAccessId(user = "admin")
|
||||
void should_SetOriginalSchema_When_ExceptionThrown() throws Exception {
|
||||
|
||||
taskanaEngine.getConfiguration().setSchemaName("NotExisting");
|
||||
SqlConnectionRunner runner = new SqlConnectionRunner(taskanaEngine);
|
||||
|
||||
// TSK-1749
|
||||
assertThat(runner.getConnection().getSchema()).matches("TASKANA\\s|TASKANA|taskana");
|
||||
String taskId = "TKI:000000000000000000000000000000000000";
|
||||
|
||||
assertThatThrownBy(
|
||||
() ->
|
||||
runner.runWithConnection(
|
||||
connection -> {
|
||||
PreparedStatement preparedStatement =
|
||||
connection.prepareStatement("select * from TASK where ID = ?");
|
||||
preparedStatement.setString(1, taskId);
|
||||
preparedStatement.executeQuery();
|
||||
}))
|
||||
.isInstanceOf(TaskanaRuntimeException.class);
|
||||
|
||||
// TSK-1749
|
||||
assertThat(runner.getConnection().getSchema()).matches("TASKANA\\s|TASKANA|taskana");
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,14 +1,12 @@
|
|||
package acceptance.jobs.helper;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.assertj.core.api.Assertions.assertThatThrownBy;
|
||||
|
||||
import acceptance.AbstractAccTest;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
|
||||
import pro.taskana.common.api.exceptions.TaskanaRuntimeException;
|
||||
import pro.taskana.common.test.security.JaasExtension;
|
||||
import pro.taskana.common.test.security.WithAccessId;
|
||||
import pro.taskana.task.api.models.Task;
|
||||
|
@ -26,37 +24,6 @@ class TaskUpdatePriorityBatchStatementAccTest extends AbstractAccTest {
|
|||
resetDb(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithAccessId(user = "admin")
|
||||
void should_SetOriginalSchema_When_ExceptionThrown() throws Exception {
|
||||
|
||||
taskanaEngine.getConfiguration().setSchemaName("NotExisting");
|
||||
SqlConnectionRunner runner = new SqlConnectionRunner(taskanaEngine);
|
||||
|
||||
// TSK-1749
|
||||
assertThat(runner.getConnection().getSchema()).matches("TASKANA\\s|TASKANA|taskana");
|
||||
|
||||
String taskId = "TKI:000000000000000000000000000000000050";
|
||||
final int priorityUpdate = 25;
|
||||
|
||||
assertThatThrownBy(
|
||||
() ->
|
||||
runner.runWithConnection(
|
||||
connection -> {
|
||||
final TaskUpdatePriorityBatchStatement batchStatement =
|
||||
new TaskUpdatePriorityBatchStatement(connection);
|
||||
batchStatement.addPriorityUpdate(taskId, priorityUpdate);
|
||||
batchStatement.executeBatch();
|
||||
if (!connection.getAutoCommit()) {
|
||||
connection.commit();
|
||||
}
|
||||
}))
|
||||
.isInstanceOf(TaskanaRuntimeException.class);
|
||||
|
||||
// TSK-1749
|
||||
assertThat(runner.getConnection().getSchema()).matches("TASKANA\\s|TASKANA|taskana");
|
||||
}
|
||||
|
||||
@Test
|
||||
@WithAccessId(user = "admin")
|
||||
void should_updatePriority() throws Exception {
|
||||
|
|
Loading…
Reference in New Issue