public Criterion build() { return new Criterion(this); } }
public static RequestBuilder builder() { return new RequestBuilder(); }
public static Builder builder() { return new Builder(); }
@Test public void fail_to_create_query_on_language_using_in_operator_and_value() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Languages should be set either by using 'languages = java' or 'languages IN (java, js)"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("languages").setOperator(IN).setValue("java").build()), emptySet()); }
private static void processMetricCriterion(Criterion criterion, ProjectMeasuresQuery query) { checkOperator(criterion); checkValue(criterion); query.addMetricCriterion(createMetricCriterion(criterion, criterion.getKey().toLowerCase(ENGLISH), criterion.getOperator())); }
@Test public void fail_when_no_qualifier_provided() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("The 'qualifiers' parameter is missing"); call(new SearchRequest()); }
@Override protected void configureModule() { add( ResourcesWs.class, ComponentsWs.class, // actions AppAction.class, SearchAction.class, SuggestionsAction.class, TreeAction.class, ShowAction.class, SearchProjectsAction.class); } }
private ComponentDto insertProject(OrganizationDto organizationDto, Measure... measures) { return insertProject(organizationDto, c -> { }, measures); }
private static void assertValidFilterKey(String... metricKeys) { // do not expect an exception validateFilterKeys(metricKeys); }
private void assertInvalidFilterKey(String metricKey) { assertInvalidFilterKeys("Following metrics are not supported: '" + metricKey + "'", metricKey); }
private static ComponentDto newFileDto(ComponentDto moduleOrProject, int i) { return newFileDto(moduleOrProject, null, i); }
@Test public void fail_when_no_value() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Value cannot be null for 'ncloc'"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("ncloc").setOperator(GT).setValue(null).build()), emptySet()); }
@Test public void fail_when_not_double() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Value 'ten' is not a number"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("ncloc").setOperator(GT).setValue("ten").build()), emptySet()); }
@Test public void fail_when_no_operator() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Operator cannot be null for 'ncloc'"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("ncloc").setOperator(null).setValue("ten").build()), emptySet()); }
@Test public void fail_to_create_query_on_tag_using_in_operator_and_value() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Tags should be set either by using 'tags = java' or 'tags IN (finance, platform)"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("tags").setOperator(IN).setValue("java").build()), emptySet()); }
@Test public void fail_to_create_query_having_q_with_other_operator_than_equals() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Query should only be used with equals operator"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("query").setOperator(LT).setValue("java").build()), emptySet()); }
@Test public void fail_to_create_query_on_quality_gate_when_operator_is_not_equal() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Only equals operator is available for quality gate criteria"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("alert_status").setOperator(GT).setValue("OK").build()), emptySet()); }
@Test public void fail_to_create_query_on_quality_gate_when_value_is_incorrect() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Unknown quality gate status : 'unknown'"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("alert_status").setOperator(EQ).setValue("unknown").build()), emptySet()); }
@Test public void fail_to_use_no_data_with_operator_lower_than() { List<Criterion> criteria = singletonList(Criterion.builder().setKey("duplicated_lines_density").setOperator(LT).setValue("NO_DATA").build()); expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("NO_DATA can only be used with equals operator"); newProjectMeasuresQuery(criteria, emptySet()); }
@Test public void fail_to_create_query_having_q_with_no_value() { expectedException.expect(IllegalArgumentException.class); expectedException.expectMessage("Query is invalid"); newProjectMeasuresQuery(singletonList(Criterion.builder().setKey("query").setOperator(EQ).build()), emptySet()); }