void (@NotNull VirtualFile contentRoot, @NotNull CoverageSuitesBundle suite, @NotNull CoverageDataManager dataManager, @NotNull ProjectData data, Project project, Annotator annotator) { if (!contentRoot.isValid()) { return; } Map<String, String> normalizedFiles2Files = getNormalizedFiles2FilesMapping(data); final ProjectFileIndex index = ProjectRootManager.getInstance(project).getFileIndex(); // try to annotate files. If no data was found then remap paths and retry final DirCoverageInfo info = collectFolderCoverage(contentRoot, dataManager, annotator, data, suite.isTrackTestFolders(), index, suite.getCoverageEngine(), new HashSet<>(), Collections.unmodifiableMap(normalizedFiles2Files)); if (info == null) { String pathToRemap = findPathToRemap(data.getClasses().keySet(), contentRoot); if (pathToRemap != null) { // just replace paths for every file data = remapData(data, pathToRemap, contentRoot); suite.setCoverageData(data); for (CoverageSuite suiteSuite : suite.getSuites()) { suiteSuite.setCoverageData(data); } normalizedFiles2Files = getNormalizedFiles2FilesMapping(data); collectFolderCoverage(contentRoot, dataManager, annotator, data, suite.isTrackTestFolders(), index, suite.getCoverageEngine(), new HashSet<>(), Collections.unmodifiableMap(normalizedFiles2Files)); } } }