ScenarioSimulationServiceImpl extends KieService<ScenarioSimulationModelContent> implements ScenarioSimulationService { protected void removeOldActivatorIfExists(org.uberfire.java.nio.file.Path activatorPath, KieModule kieModule) { ioService.deleteIfExists(activatorPath); String targetPackageName = kieModule.getPom().getGav().getGroupId(); Optional<Package> packageFound = kieModuleService.resolvePackages(kieModule).stream() .filter(elem -> targetPackageName.equals(elem.getPackageName())) .findFirst(); packageFound.ifPresent(pkg -> { org.uberfire.java.nio.file.Path oldActivatorPath = getActivatorPath(pkg); ioService.deleteIfExists(oldActivatorPath); }); } ScenarioSimulationServiceImpl(); @Inject  ScenarioSimulationServiceImpl(final SessionInfo sessionInfo); @PostConstruct void init(); @Override SimulationRunResult runScenario(final Path path,
                                           final ScesimModelDescriptor simulationDescriptor,
                                           final List<ScenarioWithIndex> scenarios,
                                           final Settings settings,
                                           final Background background); @Override Path create(final Path context,
                       final String fileName,
                       final ScenarioSimulationModel content,
                       final String comment); @Override Path create(Path context, String fileName, ScenarioSimulationModel content, String comment, Type type, String value); @Override ScenarioSimulationModel load(final Path path); @Override Path save(final Path resource,
                     final ScenarioSimulationModel content,
                     final Metadata metadata,
                     final String comment); @Override void delete(final Path path,
                       final String comment); @Override Path rename(final Path path,
                       final String newName,
                       final String comment); @Override Path copy(final Path path,
                     final String newName,
                     final String comment); @Override Path copy(final Path path,
                     final String newName,
                     final Path targetDirectory,
                     final String comment); @Override Path saveAndRename(final Path path,
                              final String newFileName,
                              final Metadata metadata,
                              final ScenarioSimulationModel content,
                              final String comment); @Override List<FactMappingValidationError> validate(Simulation simulation, Settings settings, Path path);  }
@Test public void removeOldActivatorIfExistsTest() { org.uberfire.java.nio.file.Path existingActivatorPathMock = mock(org.uberfire.java.nio.file.Path.class); service.removeOldActivatorIfExists(existingActivatorPathMock, kieModuleMock); verify(ioServiceMock, times(2)).deleteIfExists(any()); reset(ioServiceMock); when(kieModuleServiceMock.resolvePackages(any(KieModule.class))).thenReturn(new HashSet<>()); service.removeOldActivatorIfExists(existingActivatorPathMock, kieModuleMock); verify(ioServiceMock, times(1)).deleteIfExists(eq(existingActivatorPathMock)); }