Do not update the externalExecutionId if null when starting TaskExecution
resolves #271
This commit is contained in:
committed by
Michael Minella
parent
2b8e5799f7
commit
a7fe76c7d6
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015 the original author or authors.
|
||||
* Copyright 2015-2017 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -166,6 +166,40 @@ public class JdbcTaskExecutionDaoTests {
|
||||
assertEquals("FOO3", taskExecution.getTaskName());
|
||||
}
|
||||
|
||||
@Test
|
||||
@DirtiesContext
|
||||
public void testStartExecutionWithNullExternalExecutionIdExisting() {
|
||||
TaskExecution expectedTaskExecution =
|
||||
initializeTaskExecutionWithExternalExecutionId();
|
||||
|
||||
dao.startTaskExecution(expectedTaskExecution.getExecutionId(), expectedTaskExecution.getTaskName(),
|
||||
expectedTaskExecution.getStartTime(), expectedTaskExecution.getArguments(),
|
||||
null);
|
||||
TestVerifierUtils.verifyTaskExecution(expectedTaskExecution,
|
||||
TestDBUtils.getTaskExecutionFromDB(dataSource, expectedTaskExecution.getExecutionId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
@DirtiesContext
|
||||
public void testStartExecutionWithNullExternalExecutionIdNonExisting() {
|
||||
TaskExecution expectedTaskExecution =
|
||||
initializeTaskExecutionWithExternalExecutionId();
|
||||
|
||||
dao.startTaskExecution(expectedTaskExecution.getExecutionId(), expectedTaskExecution.getTaskName(),
|
||||
expectedTaskExecution.getStartTime(), expectedTaskExecution.getArguments(),
|
||||
"BAR");
|
||||
expectedTaskExecution.setExternalExecutionId("BAR");
|
||||
TestVerifierUtils.verifyTaskExecution(expectedTaskExecution,
|
||||
TestDBUtils.getTaskExecutionFromDB(dataSource, expectedTaskExecution.getExecutionId()));
|
||||
}
|
||||
|
||||
private TaskExecution initializeTaskExecutionWithExternalExecutionId() {
|
||||
TaskExecution expectedTaskExecution = TestVerifierUtils.createSampleTaskExecutionNoArg();
|
||||
return this.dao.createTaskExecution(expectedTaskExecution.getTaskName(),
|
||||
expectedTaskExecution.getStartTime(), expectedTaskExecution.getArguments(),
|
||||
"FOO1");
|
||||
}
|
||||
|
||||
private Iterator<TaskExecution> getPageIterator(int pageNum, int pageSize, Sort sort) {
|
||||
Pageable pageable = (sort == null) ?
|
||||
new PageRequest(pageNum, pageSize) :
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright 2015 the original author or authors.
|
||||
* Copyright 2015-2017 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
@@ -137,4 +137,34 @@ public class MapTaskExecutionDaoTests {
|
||||
assertNull(this.dao.getTaskExecutionIdByJobExecutionId(789L));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStartExecutionWithNullExternalExecutionIdExisting(){
|
||||
TaskExecution expectedTaskExecution =
|
||||
initializeTaskExecutionWithExternalExecutionId();
|
||||
Map<Long, TaskExecution> taskExecutionMap = this.dao.getTaskExecutions();
|
||||
this.dao.startTaskExecution(expectedTaskExecution.getExecutionId(), expectedTaskExecution.getTaskName(),
|
||||
expectedTaskExecution.getStartTime(), expectedTaskExecution.getArguments(),
|
||||
null);
|
||||
TestVerifierUtils.verifyTaskExecution(expectedTaskExecution,
|
||||
taskExecutionMap.get(expectedTaskExecution.getExecutionId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testStartExecutionWithNullExternalExecutionIdNonExisting(){
|
||||
TaskExecution expectedTaskExecution =
|
||||
initializeTaskExecutionWithExternalExecutionId();
|
||||
Map<Long, TaskExecution> taskExecutionMap = this.dao.getTaskExecutions();
|
||||
this.dao.startTaskExecution(expectedTaskExecution.getExecutionId(), expectedTaskExecution.getTaskName(),
|
||||
expectedTaskExecution.getStartTime(), expectedTaskExecution.getArguments(),
|
||||
"BAR");
|
||||
TestVerifierUtils.verifyTaskExecution(expectedTaskExecution,
|
||||
taskExecutionMap.get(expectedTaskExecution.getExecutionId()));
|
||||
}
|
||||
|
||||
private TaskExecution initializeTaskExecutionWithExternalExecutionId() {
|
||||
TaskExecution expectedTaskExecution = TestVerifierUtils.createSampleTaskExecutionNoArg();
|
||||
return this.dao.createTaskExecution(expectedTaskExecution.getTaskName(),
|
||||
expectedTaskExecution.getStartTime(), expectedTaskExecution.getArguments(),
|
||||
"FOO1");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user