Skip to content
This repository was archived by the owner on May 14, 2025. It is now read-only.

Commit ab8a44f

Browse files
cppwfsilayaperumalg
authored andcommitted
TaskValidation now handles invalid task definition name
resolves #3363
1 parent 80562b9 commit ab8a44f

File tree

2 files changed

+12
-0
lines changed

2 files changed

+12
-0
lines changed

spring-cloud-dataflow-server-core/src/main/java/org/springframework/cloud/dataflow/server/service/impl/validation/DefaultTaskValidationService.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
import org.springframework.cloud.dataflow.core.dsl.TaskParser;
2222
import org.springframework.cloud.dataflow.registry.service.AppRegistryService;
2323
import org.springframework.cloud.dataflow.server.DockerValidatorProperties;
24+
import org.springframework.cloud.dataflow.server.repository.NoSuchTaskDefinitionException;
2425
import org.springframework.cloud.dataflow.server.repository.TaskDefinitionRepository;
2526
import org.springframework.cloud.dataflow.server.service.TaskValidationService;
2627
import org.springframework.cloud.dataflow.server.service.ValidationStatus;
@@ -60,6 +61,9 @@ public DefaultTaskValidationService(AppRegistryService appRegistry,
6061
public ValidationStatus validateTask(String name) {
6162
validateTaskName(name);
6263
TaskDefinition definition = this.taskDefinitionRepository.findByTaskName(name);
64+
if(definition == null) {
65+
throw new NoSuchTaskDefinitionException(name);
66+
}
6367
ValidationStatus validationStatus = new ValidationStatus(
6468
definition.getName(),
6569
definition.getDslText());

spring-cloud-dataflow-server-core/src/test/java/org/springframework/cloud/dataflow/server/service/impl/DefaultTaskExecutionServiceTests.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,14 @@ public void validateValidTaskTest() {
365365
assertEquals("valid", validationStatus.getAppsStatuses().get("task:simpleTask"));
366366
}
367367

368+
@Test(expected = NoSuchTaskDefinitionException.class)
369+
@DirtiesContext
370+
public void validateMissingTaskDefinitionTest() {
371+
initializeSuccessfulRegistry(appRegistry);
372+
ValidationStatus validationStatus = taskValidationService.validateTask("simpleTask");
373+
assertEquals("valid", validationStatus.getAppsStatuses().get("task:simpleTask"));
374+
}
375+
368376
@Test
369377
@DirtiesContext
370378
public void validateInvalidTaskTest() {

0 commit comments

Comments
 (0)