From ad71758490a20d2ed2bc0adc7e0f2c79f99287a4 Mon Sep 17 00:00:00 2001 From: "andrea.terzani" Date: Wed, 31 Jul 2024 09:42:18 +0200 Subject: [PATCH 1/3] feat: Add ScenarioInputs class to Scenario model --- .../com/olympus/hermione/models/Scenario.java | 2 ++ .../olympus/hermione/models/ScenarioInputs.java | 15 +++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 src/main/java/com/olympus/hermione/models/ScenarioInputs.java diff --git a/src/main/java/com/olympus/hermione/models/Scenario.java b/src/main/java/com/olympus/hermione/models/Scenario.java index 878db4d..eb425f3 100644 --- a/src/main/java/com/olympus/hermione/models/Scenario.java +++ b/src/main/java/com/olympus/hermione/models/Scenario.java @@ -15,4 +15,6 @@ public class Scenario { private String id; private String name; private List steps; + private List inputs; + } diff --git a/src/main/java/com/olympus/hermione/models/ScenarioInputs.java b/src/main/java/com/olympus/hermione/models/ScenarioInputs.java new file mode 100644 index 0000000..c1cc09a --- /dev/null +++ b/src/main/java/com/olympus/hermione/models/ScenarioInputs.java @@ -0,0 +1,15 @@ +package com.olympus.hermione.models; + + + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class ScenarioInputs { + + private String name; + private String type; + private String label; +} From 96131731a1135ca76b78cad7588d29ce0d9e7c67 Mon Sep 17 00:00:00 2001 From: "andrea.terzani" Date: Wed, 31 Jul 2024 11:18:42 +0200 Subject: [PATCH 2/3] chore: Refactor ScenarioController and ScenarioExecutionService --- .../hermione/controllers/ScenarioController.java | 12 ++++++++++++ .../hermione/services/ScenarioExecutionService.java | 7 +++++++ 2 files changed, 19 insertions(+) diff --git a/src/main/java/com/olympus/hermione/controllers/ScenarioController.java b/src/main/java/com/olympus/hermione/controllers/ScenarioController.java index 549631a..69dd15d 100644 --- a/src/main/java/com/olympus/hermione/controllers/ScenarioController.java +++ b/src/main/java/com/olympus/hermione/controllers/ScenarioController.java @@ -21,6 +21,18 @@ public class ScenarioController { return scenarioRepository.findAll(); } + + // Get single scenario + + + + //Exec scenario che prende in input un json con l'id dello scenario e gli input dell'utente e restituisce il risultato dell'esecuzione + // {scenarioid: 1, input: {input1: "valore1", input2: "valore2"}} =)> devi definire un DTO per questo json + //nuovo metodo executeScenarioNew dello ScenarioExecutionService che prende in input l oggetto definito sopra + + + + @PostMapping("scenarios") public Scenario createScenario(@RequestBody Scenario scenario) { return scenarioRepository.save(scenario); diff --git a/src/main/java/com/olympus/hermione/services/ScenarioExecutionService.java b/src/main/java/com/olympus/hermione/services/ScenarioExecutionService.java index aa1f6d4..cc6fea5 100644 --- a/src/main/java/com/olympus/hermione/services/ScenarioExecutionService.java +++ b/src/main/java/com/olympus/hermione/services/ScenarioExecutionService.java @@ -41,6 +41,13 @@ public class ScenarioExecutionService { private Logger logger = LoggerFactory.getLogger(ScenarioExecutionService.class); + /* + public String executeScenarioNew(ScenarioExecutionInput scenarioExecutionInput){ + + } + */ + + public String executeScenario(String scenarioId, String input){ Optional o_scenario = scenarioRepository.findById(scenarioId); From f2dd48c5ecdf32099c71b8b7b8408249b3c08396 Mon Sep 17 00:00:00 2001 From: "andrea.terzani" Date: Wed, 31 Jul 2024 14:31:31 +0200 Subject: [PATCH 3/3] chore: Update scenario execution in TestController to use new scenario ID --- .../java/com/olympus/hermione/controllers/TestController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/olympus/hermione/controllers/TestController.java b/src/main/java/com/olympus/hermione/controllers/TestController.java index 8493c4c..23768b9 100644 --- a/src/main/java/com/olympus/hermione/controllers/TestController.java +++ b/src/main/java/com/olympus/hermione/controllers/TestController.java @@ -15,7 +15,7 @@ public class TestController { @GetMapping("/test/scenario_execution") public String testScenarioExecution(){ - String result = scenarioExecutionService.executeScenario("66a7bbb7c5c2e1863e5d6db0","How a testcase is made on ATF ? What is the meaning of a Task?"); + String result = scenarioExecutionService.executeScenario("66aa162debe80dfcd17f0ef4","How i can change the path where uploaded documents are stored ?"); return result; } }