@Override public boolean isIssues() { return analysisMode.isIssues(); }
private void load() { String scanAllStr = analysisProps.get(KEY_SCAN_ALL); scanAllFiles = !analysisMode.isIssues() || "true".equals(scanAllStr); }
private boolean isIssuesMode() { return getComponentByType(GlobalAnalysisMode.class).isIssues(); }
public ScannerPluginPredicate(Configuration settings, GlobalAnalysisMode mode) { this.mode = mode; if (mode.isPreview() || mode.isIssues()) { // These default values are not supported by Settings because the class CorePlugin // is not loaded yet. whites.addAll(propertyValues(settings, CoreProperties.PREVIEW_INCLUDE_PLUGINS, CoreProperties.PREVIEW_INCLUDE_PLUGINS_DEFAULT_VALUE)); blacks.addAll(propertyValues(settings, CoreProperties.PREVIEW_EXCLUDE_PLUGINS, CoreProperties.PREVIEW_EXCLUDE_PLUGINS_DEFAULT_VALUE)); } if (!whites.isEmpty()) { LOG.info("Include plugins: " + COMMA_JOINER.join(whites)); } if (!blacks.isEmpty()) { LOG.info("Exclude plugins: " + COMMA_JOINER.join(blacks)); } }
public static Collection<Object> all(GlobalAnalysisMode analysisMode) { List<Object> components = Lists.newArrayList( DefaultResourceTypes.get()); components.addAll(CorePropertyDefinitions.all()); if (!analysisMode.isIssues()) { components.add(ZeroCoverageSensor.class); components.add(JavaCpdBlockIndexerSensor.class); // Generic coverage components.add(GenericCoverageSensor.class); components.addAll(GenericCoverageSensor.properties()); components.add(GenericTestExecutionSensor.class); components.addAll(GenericTestExecutionSensor.properties()); // External issues components.add(ExternalIssuesImportSensor.class); components.add(ExternalIssuesImportSensor.properties()); } else { // Issues tracking components.add(new Tracker<TrackedIssue, ServerIssueFromWs>()); components.add(JSONReport.class); } return components; } }
@Override public void start() { reportDir = moduleHierarchy.root().getWorkDir().resolve("scanner-report"); writer = new ScannerReportWriter(reportDir.toFile()); contextPublisher.init(writer); if (!analysisMode.isIssues() && !analysisMode.isMediumTest()) { String publicUrl = server.getPublicRootUrl(); if (HttpUrl.parse(publicUrl) == null) { throw MessageException.of("Failed to parse public URL set in SonarQube server: " + publicUrl); } } }
@Test public void testValidation() { when(mode.isIssues()).thenReturn(true); when(loader.load(eq("key"), eq(true), any())).thenReturn(project); provider.provide(loader, props, mode, branchConfiguration); }
@Test public void preview_mode_fallback_issues() { GlobalAnalysisMode mode = createMode(CoreProperties.ANALYSIS_MODE, CoreProperties.ANALYSIS_MODE_PREVIEW); assertThat(mode.isIssues()).isTrue(); assertThat(mode.isPreview()).isFalse(); }
@Test public void testAssociated() { when(mode.isIssues()).thenReturn(false); when(loader.load(eq("key"), eq(false), any())).thenReturn(project); ProjectRepositories repo = provider.provide(loader, props, mode, branchConfiguration); assertThat(repo.exists()).isEqualTo(true); assertThat(repo.lastAnalysisDate()).isNotNull(); verify(mode, times(1)).isIssues(); verify(props).getKeyWithBranch(); verify(loader).load(eq("key"), eq(false), eq(null)); verifyNoMoreInteractions(loader, props, mode); } }
@Test public void testIssuesMode() { GlobalAnalysisMode mode = createMode(CoreProperties.ANALYSIS_MODE, CoreProperties.ANALYSIS_MODE_ISSUES); assertThat(mode.isPreview()).isFalse(); assertThat(mode.isIssues()).isTrue(); assertThat(mode.isPublish()).isFalse(); }
@Test public void testDefault() { GlobalAnalysisMode mode = createMode(null, null); assertThat(mode.isPreview()).isFalse(); assertThat(mode.isIssues()).isFalse(); assertThat(mode.isPublish()).isTrue(); }
@Test public void reuse_global_mode() { when(globalMode.isIssues()).thenReturn(true); when(globalMode.isPublish()).thenReturn(true); when(globalMode.isPreview()).thenReturn(true); DefaultAnalysisMode mode = createmode(new ScannerProperties(Collections.emptyMap())); assertThat(mode.isIssues()).isTrue(); assertThat(mode.isPublish()).isTrue(); assertThat(mode.isPreview()).isTrue(); }
@Test public void scan_all_if_publish() { when(globalMode.isIssues()).thenReturn(false); DefaultAnalysisMode mode = createmode(new ScannerProperties(Collections.emptyMap())); assertThat(mode.scanAllFiles()).isTrue(); }
@Test public void dont_scan_all_if_issues_mode() { when(globalMode.isIssues()).thenReturn(true); DefaultAnalysisMode mode = createmode(new ScannerProperties(Collections.emptyMap())); assertThat(mode.scanAllFiles()).isFalse(); }
@Test public void testOtherProperty() { GlobalAnalysisMode mode = createMode(CoreProperties.ANALYSIS_MODE, CoreProperties.ANALYSIS_MODE_PUBLISH); assertThat(mode.isPreview()).isFalse(); assertThat(mode.isIssues()).isFalse(); assertThat(mode.isPublish()).isTrue(); }
@Test public void verify_both_inclusions_and_exclusions_issues() { when(mode.isIssues()).thenReturn(true); settings .setProperty(CoreProperties.PREVIEW_INCLUDE_PLUGINS, "checkstyle,pmd,findbugs") .setProperty(CoreProperties.PREVIEW_EXCLUDE_PLUGINS, "cobertura"); ScannerPluginPredicate predicate = new ScannerPluginPredicate(settings.asConfig(), mode); assertThat(predicate.apply("checkstyle")).isTrue(); assertThat(predicate.apply("pmd")).isTrue(); assertThat(predicate.apply("cobertura")).isFalse(); }
public ProjectRepositories provide(ProjectRepositoriesLoader loader, ScannerProperties scannerProperties, GlobalAnalysisMode mode, BranchConfiguration branchConfig) { if (project == null) { boolean isIssuesMode = mode.isIssues(); Profiler profiler = Profiler.create(LOG).startInfo(LOG_MSG); project = loader.load(scannerProperties.getKeyWithBranch(), isIssuesMode, branchConfig.longLivingSonarReferenceBranch()); checkProject(isIssuesMode); profiler.stopInfo(); } return project; }
if (analysisMode.isIssues()) { getComponentByType(IssueTransition.class).execute(); getComponentByType(JSONReport.class).execute();
@Override public void start() { reportDir = moduleHierarchy.root().getWorkDir().resolve("scanner-report"); writer = new ScannerReportWriter(reportDir.toFile()); contextPublisher.init(writer); if (!analysisMode.isIssues() && !analysisMode.isMediumTest()) { String publicUrl = server.getPublicRootUrl(); if (HttpUrl.parse(publicUrl) == null) { throw MessageException.of("Failed to parse public URL set in SonarQube server: " + publicUrl); } } }
public ProjectRepositories provide(ProjectRepositoriesLoader loader, ScannerProperties scannerProperties, GlobalAnalysisMode mode, BranchConfiguration branchConfig) { if (project == null) { boolean isIssuesMode = mode.isIssues(); Profiler profiler = Profiler.create(LOG).startInfo(LOG_MSG); project = loader.load(scannerProperties.getKeyWithBranch(), isIssuesMode, branchConfig.longLivingSonarReferenceBranch()); checkProject(isIssuesMode); profiler.stopInfo(); } return project; }