You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jg...@apache.org on 2018/11/28 22:52:06 UTC

[09/14] tomee git commit: fixing based on romain's feedback

fixing based on romain's feedback


Project: http://git-wip-us.apache.org/repos/asf/tomee/repo
Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/30b75da9
Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/30b75da9
Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/30b75da9

Branch: refs/heads/master
Commit: 30b75da997ad92822dd08d46830555ca0084787a
Parents: e41a862
Author: ivanjunckes <ij...@tomitribe.com>
Authored: Mon Nov 26 14:52:43 2018 -0200
Committer: ivanjunckes <ij...@tomitribe.com>
Committed: Mon Nov 26 14:52:43 2018 -0200

----------------------------------------------------------------------
 .../src/test/java/WeatherServiceTest.java       | 160 ++++++++++++-------
 1 file changed, 101 insertions(+), 59 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tomee/blob/30b75da9/examples/mp-metrics-timed/src/test/java/WeatherServiceTest.java
----------------------------------------------------------------------
diff --git a/examples/mp-metrics-timed/src/test/java/WeatherServiceTest.java b/examples/mp-metrics-timed/src/test/java/WeatherServiceTest.java
index b119ede..074156c 100644
--- a/examples/mp-metrics-timed/src/test/java/WeatherServiceTest.java
+++ b/examples/mp-metrics-timed/src/test/java/WeatherServiceTest.java
@@ -15,22 +15,27 @@
  * limitations under the License.
  */
 
-import org.apache.cxf.jaxrs.client.WebClient;
 import org.jboss.arquillian.container.test.api.Deployment;
 import org.jboss.arquillian.junit.Arquillian;
 import org.jboss.arquillian.test.api.ArquillianResource;
 import org.jboss.shrinkwrap.api.ShrinkWrap;
 import org.jboss.shrinkwrap.api.asset.StringAsset;
 import org.jboss.shrinkwrap.api.spec.WebArchive;
+import org.junit.After;
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
 import javax.json.Json;
 import javax.json.JsonObject;
+import javax.ws.rs.client.Client;
+import javax.ws.rs.client.ClientBuilder;
+import javax.ws.rs.client.WebTarget;
 import javax.ws.rs.core.MediaType;
 import javax.ws.rs.core.Response;
 import java.io.StringReader;
 import java.net.URL;
+import java.util.stream.Stream;
 
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertTrue;
@@ -49,11 +54,25 @@ public class WeatherServiceTest {
     @ArquillianResource
     private URL base;
 
+    private Client client;
+
+    @Before
+    public void before(){
+        this.client = ClientBuilder.newClient();
+    }
+
+    @After
+    public void after(){
+        this.client.close();
+    }
+
     @Test
     public void testTimedMetric() {
-        WebClient.create(base.toExternalForm())
+        WebTarget webTarget = client.target(base.toExternalForm());
+
+        webTarget
                 .path("/weather/day/status")
-                .get(String.class);
+                .request().buildGet().invoke();
 
         final String metricPath = "/metrics/application/weather_day_status";
         assertPrometheusFormat(metricPath);
@@ -61,74 +80,97 @@ public class WeatherServiceTest {
     }
 
     private void assertPrometheusFormat(final String metricPath) {
-        final String metric = WebClient.create(base.toExternalForm())
+        WebTarget webTarget = client.target(base.toExternalForm());
+
+        String metric = webTarget
                 .path(metricPath)
+                .request()
                 .accept(MediaType.TEXT_PLAIN)
-                .get(String.class);
-
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds summary timer"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds_count timer"));
-        assertTrue(metric.contains("application:weather_day_status_seconds_count 1.0"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_rate_per_second timer"));
-        assertTrue(metric.contains("application:weather_day_status_rate_per_second"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_one_min_rate_per_second timer"));
-        assertTrue(metric.contains("application:weather_day_status_one_min_rate_per_second"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_five_min_rate_per_second timer"));
-        assertTrue(metric.contains("application:weather_day_status_five_min_rate_per_second"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_fifteen_min_rate_per_second time"));
-        assertTrue(metric.contains("application:weather_day_status_fifteen_min_rate_per_second"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_min_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_min_seconds"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_max_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_max_seconds"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_mean_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_mean_seconds"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_stddev_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_stddev_seconds"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_seconds{quantile=\"0.5\"}"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_seconds{quantile=\"0.75\"}"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_seconds{quantile=\"0.95\"}"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_seconds{quantile=\"0.98\"}"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_seconds{quantile=\"0.99\"}"));
-        assertTrue(metric.contains("# TYPE application:weather_day_status_seconds timer"));
-        assertTrue(metric.contains("application:weather_day_status_seconds{quantile=\"0.999\"}"));
+                .buildGet()
+                .invoke()
+                .readEntity(String.class);
+
+        String [] expected = {
+                "# TYPE application:weather_day_status_seconds summary timer",
+                "# TYPE application:weather_day_status_seconds_count timer",
+                "application:weather_day_status_seconds_count 1.0",
+                "# TYPE application:weather_day_status_rate_per_second timer",
+                "application:weather_day_status_rate_per_second",
+                "# TYPE application:weather_day_status_one_min_rate_per_second timer",
+                "# TYPE application:weather_day_status_five_min_rate_per_second timer",
+                "application:weather_day_status_five_min_rate_per_second",
+                "# TYPE application:weather_day_status_fifteen_min_rate_per_second time",
+                "application:weather_day_status_fifteen_min_rate_per_second",
+                "# TYPE application:weather_day_status_min_seconds timer",
+                "application:weather_day_status_min_seconds",
+                "# TYPE application:weather_day_status_max_seconds timer",
+                "application:weather_day_status_max_seconds",
+                "# TYPE application:weather_day_status_mean_seconds timer",
+                "application:weather_day_status_mean_seconds",
+                "# TYPE application:weather_day_status_stddev_seconds timer",
+                "application:weather_day_status_stddev_seconds",
+                "# TYPE application:weather_day_status_seconds timer",
+                "application:weather_day_status_seconds{quantile=\"0.5\"}",
+                "# TYPE application:weather_day_status_seconds timer",
+                "application:weather_day_status_seconds{quantile=\"0.75\"}",
+                "# TYPE application:weather_day_status_seconds timer",
+                "application:weather_day_status_seconds{quantile=\"0.95\"}",
+                "# TYPE application:weather_day_status_seconds timer",
+                "application:weather_day_status_seconds{quantile=\"0.98\"}",
+                "# TYPE application:weather_day_status_seconds timer",
+                "application:weather_day_status_seconds{quantile=\"0.99\"}",
+                "# TYPE application:weather_day_status_seconds timer",
+                "application:weather_day_status_seconds{quantile=\"0.999\"}"
+        };
+
+        Stream.of(expected)
+                .forEach(text -> assertTrue("Expected: " + text + " to be present in " + metric, metric.contains(text)));
     }
 
     private void assertJsonFormat(final String metricPath) {
-        final String metric = WebClient.create(base.toExternalForm())
+        WebTarget webTarget = client.target(base.toExternalForm());
+
+        String metric = webTarget
                 .path(metricPath)
+                .request()
                 .accept(MediaType.APPLICATION_JSON)
-                .get(String.class);
-
-        assertTrue(metric.contains("count"));
-        assertTrue(metric.contains("meanRate"));
-        assertTrue(metric.contains("fifteenMinRate"));
-        assertTrue(metric.contains("fiveMinRate"));
-        assertTrue(metric.contains("oneMinRate"));
-        assertTrue(metric.contains("min"));
-        assertTrue(metric.contains("max"));
-        assertTrue(metric.contains("mean"));
-        assertTrue(metric.contains("stddev"));
-        assertTrue(metric.contains("p50"));
-        assertTrue(metric.contains("p75"));
-        assertTrue(metric.contains("p95"));
-        assertTrue(metric.contains("p98"));
-        assertTrue(metric.contains("p99"));
-        assertTrue(metric.contains("p999"));
-
+                .buildGet()
+                .invoke()
+                .readEntity(String.class);
+
+        String [] expected = {
+                "count",
+                "meanRate",
+                "fifteenMinRate",
+                "fiveMinRate",
+                "oneMinRate",
+                "min",
+                "max",
+                "mean",
+                "stddev",
+                "p50",
+                "p75",
+                "p95",
+                "p98",
+                "p99",
+                "p999"
+        };
+
+        Stream.of(expected)
+                .forEach(text -> assertTrue("Expected: " + text + " to be present in " + metric, metric.contains(text)));
     }
 
     @Test
     public void testTimedMetricMetadata() {
-        final Response response = WebClient.create(base.toExternalForm())
-                .path("/metrics/application/weather_day_status")
+
+        WebTarget webTarget = client.target(base.toExternalForm());
+
+        Response response = webTarget.path("/metrics/application/weather_day_status")
+                .request()
                 .accept(MediaType.APPLICATION_JSON)
-                .options();
+                .build("OPTIONS")
+                .invoke();
+
         final String metaData = response.readEntity(String.class);
         JsonObject metadataJson = Json.createReader(new StringReader(metaData)).readObject();