class AbstractScenarioRunner extends Runner {

    @Override
    public void run(RunNotifier notifier) {
        simulationRunMetadataBuilder = SimulationRunMetadataBuilder.create();

        notifier.fireTestStarted(getDescription());
        for (ScenarioWithIndex scenarioWithIndex : scenarioRunnerDTO.getScenarioWithIndices()) {
            singleRunScenario(scenarioWithIndex, notifier, scenarioRunnerDTO.getSettings(), scenarioRunnerDTO.getBackground())
                    .ifPresent(simulationRunMetadataBuilder::addScenarioResultMetadata);
        }
        notifier.fireTestStarted(getDescription());
    }

    public  AbstractScenarioRunner(KieContainer kieContainer,
                                  ScenarioRunnerDTO scenarioRunnerDTO,
                                  ExpressionEvaluatorFactory expressionEvaluatorFactory);

}