/** * List of components of a project */ public Builder setComponentUuids(String projectUuid, Collection<String> componentUuids) { setProjectUuids(singleton(requireNonNull(projectUuid))); this.componentUuids = componentUuids; return this; }
@Test public void create_query_from_projects() { MeasureQuery query = MeasureQuery.builder().setProjectUuids(asList("PROJECT_1", "PROJECT_2")).build(); assertThat(query.getProjectUuids()).containsOnly("PROJECT_1", "PROJECT_2"); assertThat(query.isOnProjects()).isTrue(); assertThat(query.isOnComponents()).isFalse(); assertThat(query.isOnSingleComponent()).isFalse(); }
@Test public void return_empty_when_metrics_are_empty() { assertThat(MeasureQuery.builder() .setProjectUuids(asList("PROJECT_1", "PROJECT_2")) .setMetricKeys(emptyList()) .build().returnsEmpty()).isTrue(); assertThat(MeasureQuery.builder() .setProjectUuids(asList("PROJECT_1", "PROJECT_2")) .setMetricIds(emptyList()) .build().returnsEmpty()).isTrue(); }
/** * List of components of a project */ public Builder setComponentUuids(String projectUuid, Collection<String> componentUuids) { setProjectUuids(singleton(requireNonNull(projectUuid))); this.componentUuids = componentUuids; return this; }
verifyZeroMeasures(MeasureQuery.builder().setProjectUuids(emptyList())); verifyZeroMeasures(MeasureQuery.builder().setProjectUuids(singletonList("MISSING_COMPONENT"))); verifyMeasures(MeasureQuery.builder().setProjectUuids(singletonList(project1.uuid())).setMetricId(NCLOC_METRIC_ID), "P1_M1"); verifyMeasures(MeasureQuery.builder().setProjectUuids(asList(project1.uuid(), project2.uuid())).setMetricIds(asList(NCLOC_METRIC_ID, COVERAGE_METRIC_ID)), "P1_M1", "P1_M2", "P2_M1", "P2_M2", "P2_M2"); verifyMeasures(MeasureQuery.builder().setProjectUuids(asList(project1.uuid(), project2.uuid(), "UNKNOWN")).setMetricId(NCLOC_METRIC_ID), "P1_M1", "P2_M1"); verifyMeasures(MeasureQuery.builder().setProjectUuids(singletonList(project1.uuid())).setMetricId(NCLOC_METRIC_ID).setAnalysisUuid(pastAnalysis.getUuid()), "P1_M3"); verifyMeasures(MeasureQuery.builder().setProjectUuids(asList(project1.uuid(), project2.uuid())).setMetricId(NCLOC_METRIC_ID).setAnalysisUuid(pastAnalysis.getUuid()), "P1_M3");
@Test public void fail_when_using_metric_ids_and_metric_keys() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Metric IDs and keys must not be set both"); MeasureQuery.builder().setMetricIds(asList(10, 11)).setMetricKeys(asList("M1", "M2")).setProjectUuids(asList("PROJECT_1", "PROJECT_2")).build(); }
@Test public void return_empty_when_projects_are_empty() { assertThat(MeasureQuery.builder() .setProjectUuids(emptyList()) .build().returnsEmpty()).isTrue(); }
@Test public void create_query_from_metric_keys() { MeasureQuery query = MeasureQuery.builder().setProjectUuids(asList("PROJECT_1", "PROJECT_2")).setMetricKeys(asList("M1", "M2")).build(); assertThat(query.getMetricKeys()).containsOnly("M1", "M2"); assertThat(query.getMetricIds()).isNull(); }
@Test public void create_query_from_metric_ids() { MeasureQuery query = MeasureQuery.builder().setProjectUuids(asList("PROJECT_1", "PROJECT_2")).setMetricIds(asList(10, 11)).build(); assertThat(query.getMetricIds()).containsOnly(10, 11); assertThat(query.getMetricKeys()).isNull(); }