Skip to content

Commit 76c12d9

Browse files
author
Tihomir Surdilovic
committed
adding no-param test
Signed-off-by: Tihomir Surdilovic <[email protected]>
1 parent 966e2c4 commit 76c12d9

File tree

4 files changed

+65
-1
lines changed

4 files changed

+65
-1
lines changed

api/src/main/java/io/serverlessworkflow/api/deserializers/FunctionRefDeserializer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ public FunctionRef deserialize(JsonParser jp,
6161
if (!node.isObject()) {
6262
functionRef.setRefName(node.asText());
6363
ObjectMapper objectMapper = new ObjectMapper();
64-
functionRef.setParameters(objectMapper.readTree("{}"));
64+
functionRef.setParameters(null);
6565
return functionRef;
6666
} else {
6767
if(node.get("parameters") != null) {

api/src/test/java/io/serverlessworkflow/api/test/MarkupToWorkflowTest.java

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,4 +316,33 @@ public void testFunctionRefJsonParams(String workflowLocation) {
316316
assertEquals("Pluto", params.get("body").get("name").asText());
317317
assertEquals("${ .pet.tagnumber }", params.get("body").get("tag").asText());
318318
}
319+
320+
@ParameterizedTest
321+
@ValueSource(strings = {"/features/functionrefnoparams.json", "/features/functionrefnoparams.yml"})
322+
public void testFunctionRefNoParams(String workflowLocation) {
323+
Workflow workflow = Workflow.fromSource(WorkflowTestUtils.readWorkflowFile(workflowLocation));
324+
325+
assertNotNull(workflow);
326+
assertNotNull(workflow.getId());
327+
assertNotNull(workflow.getName());
328+
assertNotNull(workflow.getStates());
329+
330+
assertNotNull(workflow.getStates());
331+
assertTrue(workflow.getStates().size() == 1);
332+
assertTrue(workflow.getStates().get(0) instanceof OperationState);
333+
334+
OperationState operationState = (OperationState) workflow.getStates().get(0);
335+
assertNotNull(operationState.getActions());
336+
assertEquals(2, operationState.getActions().size());
337+
List<Action> actions = operationState.getActions();
338+
assertNotNull(actions.get(0).getFunctionRef());
339+
assertNotNull(actions.get(1).getFunctionRef());
340+
assertEquals("addPet", actions.get(0).getFunctionRef().getRefName());
341+
assertEquals("addPet", actions.get(1).getFunctionRef().getRefName());
342+
343+
JsonNode params = actions.get(0).getFunctionRef().getParameters();
344+
assertNull(params);
345+
JsonNode params2 = actions.get(1).getFunctionRef().getParameters();
346+
assertNull(params);
347+
}
319348
}
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
{
2+
"id": "functionrefparams",
3+
"version": "1.0",
4+
"name": "Function Ref Params Test",
5+
"states": [
6+
{
7+
"name": "AddPluto",
8+
"type": "operation",
9+
"start": true,
10+
"actions": [
11+
{
12+
"functionRef": {
13+
"refName": "addPet"
14+
}
15+
},
16+
{
17+
"functionRef": "addPet"
18+
}
19+
],
20+
"end": true
21+
}
22+
]
23+
}
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
id: functionrefparams
2+
version: '1.0'
3+
name: Function Ref Params Test
4+
states:
5+
- name: AddPluto
6+
type: operation
7+
start: true
8+
actions:
9+
- functionRef:
10+
refName: addPet
11+
- functionRef: addPet
12+
end: true

0 commit comments

Comments
 (0)