@Override
    protected Map<String, Object> executeScenario(KieContainer kieContainer,
                                                  ScenarioRunnerData scenarioRunnerData,
                                                  ExpressionEvaluatorFactory expressionEvaluatorFactory,
                                                  ScesimModelDescriptor scesimModelDescriptor,
                                                  Settings settings) {
        if (!ScenarioSimulationModel.Type.DMN.equals(settings.getType())) {
            throw new ScenarioException("Impossible to run a not-DMN simulation with DMN runner");
        }
        DMNScenarioExecutableBuilder executableBuilder = createBuilderWrapper(kieContainer);
        executableBuilder.setActiveModel(settings.getDmnFilePath());

        defineInputValues(scenarioRunnerData.getBackgrounds(), scenarioRunnerData.getGivens()).forEach(executableBuilder::setValue);

        return executableBuilder.run().getOutputs();
    }
@Test
    public void validateUnSecureImportPrefix() {
        String injectedPrefix = "/.(a+)+$/";
        FactIdentifier importedPersonFactIdentifier = FactIdentifier.create(injectedPrefix + ".Person", injectedPrefix + ".Person", injectedPrefix);

        ScenarioRunnerData scenarioRunnerData = new ScenarioRunnerData();
        AbstractMap.SimpleEntry<String, Object> givenImportedPersonFactData = new AbstractMap.SimpleEntry<>("surname", "White");
        AbstractMap.SimpleEntry<String, Object> givenImportedPersonFactData2 = new AbstractMap.SimpleEntry<>("age", 67);
        scenarioRunnerData.addGiven(new InstanceGiven(importedPersonFactIdentifier, Map.ofEntries(givenImportedPersonFactData, givenImportedPersonFactData2)));

        List<String> expectedInputDataToLoad = List.of(injectedPrefix);
        int inputObjects = expectedInputDataToLoad.size();

        runnerHelper.executeScenario(kieContainerMock,
                                     scenarioRunnerData,
                                     expressionEvaluatorFactory,
                                     simulation.getScesimModelDescriptor(),
                                     settings);

        verify(dmnScenarioExecutableBuilderMock, times(inputObjects)).setValue(keyCaptor.capture(), valueCaptor.capture());
        assertThat(keyCaptor.getAllValues()).containsAll(expectedInputDataToLoad);

        String key = keyCaptor.getAllValues().get(0);
        Map<String, Object> value = (Map<String, Object>) valueCaptor.getAllValues().get(0);
        assertThat(key).isEqualTo(injectedPrefix);

        Map<String, Object> subValuePerson = (Map<String, Object>) value.get("Person");
        assertThat(subValuePerson).hasSize(2).contains(givenImportedPersonFactData, givenImportedPersonFactData2);
    }