public void setHeaders(String... headerKeyValues) { for (String headerKeyValue : headerKeyValues) { String key = headerKeyValue.split("=")[0]; String value = headerKeyValue.split("=")[1]; request.header(key, value); } }
@InSequence(23) public void testApplicationMeterUnitPrometheus() { given().header("Accept", TEXT_PLAIN).when().get("/metrics/application/meterMeA") .then().statusCode(200) .and() .body(containsString("meter_me_a_total")) .body(containsString("meter_me_a_rate_per_second")) .body(containsString("meter_me_a_one_min_rate_per_second")) .body(containsString("meter_me_a_five_min_rate_per_second")) .body(containsString("meter_me_a_fifteen_min_rate_per_second")); }
protected Response postNonRDFSource(String slug, String file, String mimeType) throws IOException { // Make sure we can post binary resources return buildBaseRequestSpecification() .header(SLUG, slug) .body(IOUtils.toByteArray(getClass().getResourceAsStream("/" + file))) .contentType(mimeType) .expect() .statusCode(HttpStatus.SC_CREATED) .header(LOCATION, HeaderMatchers.headerPresent()) .when() .post(container); }
@Test @RunAsClient @InSequence(2) public void testSharedCounter() { Header acceptJson = new Header("Accept", APPLICATION_JSON); given().header(acceptJson).get("/metrics/application").then() .assertThat().body("countMe2", equalTo(1)) .assertThat().body("'org.eclipse.microprofile.metrics.test.MetricAppBean2.meterMe2'.count", equalTo(1)) .assertThat().body("timeMe2.count", equalTo(1)); }
@Test @RunAsClient @InSequence(4) public void testSharedCounterAgain() { Header acceptJson = new Header("Accept", APPLICATION_JSON); given().header(acceptJson).get("/metrics/application").then() .assertThat().body("countMe2", equalTo(2)) .assertThat().body("'org.eclipse.microprofile.metrics.test.MetricAppBean2.meterMe2'.count", equalTo(2)) .assertThat().body("timeMe2.count", equalTo(2)); }
@Test @RunAsClient @InSequence(6) public void testReusedHistogram() { Header acceptJson = new Header("Accept", APPLICATION_JSON); given().header(acceptJson).get("/metrics/application").then() .assertThat().body("reusableHisto.count", equalTo(2)) .assertThat().body("reusableHisto.min", equalTo(1)) .assertThat().body("reusableHisto.max", equalTo(3)); }
@Test @RunAsClient @InSequence(21) public void testApplicationTagJson() { JsonPath jsonPath = given().header("Accept", APPLICATION_JSON) .when() .options("/metrics/application/purple").jsonPath(); String tags = jsonPath.getString("purple.tags"); assertNotNull(tags); assertTrue(tags.contains("app=myShop")); assertTrue(tags.contains("tier=integration")); }
@Test @RunAsClient @InSequence(29) public void testNonStandardUnitsJSON() { Header wantJSONFormat = new Header("Accept", APPLICATION_JSON); given().header(wantJSONFormat).options("/metrics/application/jellybeanHistogram").then().statusCode(200) .body("jellybeanHistogram.unit", equalTo("jellybeans")); }
@Test @RunAsClient @InSequence(6) public void testBasePrometheus() { given().header("Accept", TEXT_PLAIN).when().get("/metrics/base").then().statusCode(200).and() .contentType(TEXT_PLAIN).and().body(containsString("# TYPE base:thread_max_count"), containsString("base:thread_max_count{tier=\"integration\"}")); }
private String post(Model content, String slug) { RequestSpecification spec = buildBaseRequestSpecification().contentType(TEXT_TURTLE); if (slug != null) { spec.header(SLUG, slug); } Response post = spec.body(content, new RdfObjectMapper()).expect() .statusCode(HttpStatus.SC_CREATED).when() .post(getResourceUri()); String location = post.getHeader(LOCATION); assertNotNull(location, MSG_LOC_NOTFOUND); return location; }
@Test @RunAsClient @InSequence(16) public void testApplicationMetadataOkJson() { Header wantJson = new Header("Accept", APPLICATION_JSON); Response response = given().header(wantJson).options("/metrics/application"); int code = response.getStatusCode(); assertTrue(code == 200 || code == 204); }
@Test @RunAsClient @InSequence(27) public void testPrometheus406ForOptions() { given() .header("Accept", TEXT_PLAIN) .when() .options("/metrics/application/metricTest.test1.histogram2") .then() .statusCode(406); }
@Test @RunAsClient @InSequence(5) public void testBase() { given().header("Accept", APPLICATION_JSON).when().get("/metrics/base").then().statusCode(200).and() .contentType(MpMetricTest.APPLICATION_JSON).and().body(containsString("thread.max.count")); }
@Test @RunAsClient @InSequence(7) public void testBaseAttributeJson() { Header wantJson = new Header("Accept", APPLICATION_JSON); given().header(wantJson).when().get("/metrics/base/thread.max.count").then().statusCode(200).and() .contentType(MpMetricTest.APPLICATION_JSON).and().body(containsString("thread.max.count")); }
@Test @RunAsClient @InSequence(10) public void testBaseMetadata() { Header wantJson = new Header("Accept", APPLICATION_JSON); given().header(wantJson).options("/metrics/base").then().statusCode(200).and() .contentType(MpMetricTest.APPLICATION_JSON); }
@Test @RunAsClient @InSequence(20) public void testApplicationMetadataTypeAndUnit() { Header wantJson = new Header("Accept", APPLICATION_JSON); JsonPath jsonPath = given().header(wantJson).options("/metrics/application").jsonPath(); Map<String, Map<String, Object>> elements = jsonPath.getMap("."); Map<String, MiniMeta> expectedMetadata = getExpectedMetadataFromXmlFile(MetricRegistry.Type.APPLICATION); checkMetadataPresent(elements, expectedMetadata); }
@Test @RunAsClient @InSequence(12) public void testBaseMetadataTypeAndUnit() { Header wantJson = new Header("Accept", APPLICATION_JSON); JsonPath jsonPath = given().header(wantJson).options("/metrics/base").jsonPath(); Map<String, Map<String, Object>> elements = jsonPath.getMap("."); Map<String, MiniMeta> expectedMetadata = getExpectedMetadataFromXmlFile(MetricRegistry.Type.BASE); checkMetadataPresent(elements, expectedMetadata); }
@Test @RunAsClient @InSequence(1) public void testApplicationJsonResponseContentType() { Header acceptHeader = new Header("Accept", APPLICATION_JSON); given().header(acceptHeader).when().get("/metrics").then().statusCode(200).and().contentType(APPLICATION_JSON); }
@Test @RunAsClient @InSequence(2) public void testTextPlainResponseContentType() { Header acceptHeader = new Header("Accept", TEXT_PLAIN); given().header(acceptHeader).when().get("/metrics").then().statusCode(200).and().contentType(TEXT_PLAIN); }
@Test public void testRequestWithHeaders() throws Exception { given() .log().everything() .accept(ContentType.TEXT) .when() .header("Authorization", "AUTH_HEADER") .get("/simple/apis") .then() .statusCode(equalTo(HttpUtil.HTTP_NO_CONTENT)); } }