|
15 | 15 | import static com.microsoft.applicationinsights.smoketest.EnvironmentValue.TOMCAT_8_JAVA_8_OPENJ9; |
16 | 16 | import static com.microsoft.applicationinsights.smoketest.EnvironmentValue.WILDFLY_13_JAVA_8; |
17 | 17 | import static com.microsoft.applicationinsights.smoketest.EnvironmentValue.WILDFLY_13_JAVA_8_OPENJ9; |
18 | | -import static org.assertj.core.api.Assertions.assertThat; |
19 | | -import static org.assertj.core.data.MapEntry.entry; |
20 | 18 |
|
21 | 19 | import org.junit.jupiter.api.Test; |
22 | 20 | import org.junit.jupiter.api.extension.RegisterExtension; |
@@ -80,52 +78,57 @@ private static void verify() throws Exception { |
80 | 78 | } |
81 | 79 |
|
82 | 80 | private static void verify(String successUrlWithQueryString) throws Exception { |
83 | | - Telemetry telemetry = testing.getTelemetry(3); |
84 | | - |
85 | | - assertThat(telemetry.rd.getProperties()) |
86 | | - .containsExactly(entry("_MS.ProcessedByMetricExtractors", "True")); |
87 | | - assertThat(telemetry.rd.getSuccess()).isTrue(); |
88 | | - // TODO (trask) add this check in all smoke tests? |
89 | | - assertThat(telemetry.rdEnvelope.getSampleRate()).isNull(); |
90 | | - |
91 | | - assertThat(telemetry.rdd1.getName()).isEqualTo("GET /mock/200"); |
92 | | - assertThat(telemetry.rdd1.getData()).isEqualTo(successUrlWithQueryString); |
93 | | - assertThat(telemetry.rdd1.getType()).isEqualTo("Http"); |
94 | | - assertThat(telemetry.rdd1.getTarget()).isEqualTo("host.testcontainers.internal:6060"); |
95 | | - assertThat(telemetry.rdd1.getResultCode()).isEqualTo("200"); |
96 | | - assertThat(telemetry.rdd1.getProperties()) |
97 | | - .containsExactly(entry("_MS.ProcessedByMetricExtractors", "True")); |
98 | | - assertThat(telemetry.rdd1.getSuccess()).isTrue(); |
99 | | - assertThat(telemetry.rddEnvelope1.getSampleRate()).isNull(); |
100 | | - |
101 | | - assertThat(telemetry.rdd2.getName()).isEqualTo("GET /mock/404"); |
102 | | - assertThat(telemetry.rdd2.getData()) |
103 | | - .isEqualTo("http://host.testcontainers.internal:6060/mock/404"); |
104 | | - assertThat(telemetry.rdd2.getType()).isEqualTo("Http"); |
105 | | - assertThat(telemetry.rdd2.getTarget()).isEqualTo("host.testcontainers.internal:6060"); |
106 | | - assertThat(telemetry.rdd2.getResultCode()).isEqualTo("404"); |
107 | | - assertThat(telemetry.rdd2.getProperties()) |
108 | | - .containsExactly(entry("_MS.ProcessedByMetricExtractors", "True")); |
109 | | - assertThat(telemetry.rdd2.getSuccess()).isFalse(); |
110 | | - assertThat(telemetry.rddEnvelope2.getSampleRate()).isNull(); |
111 | | - |
112 | | - assertThat(telemetry.rdd3.getName()).isEqualTo("GET /mock/500"); |
113 | | - assertThat(telemetry.rdd3.getData()) |
114 | | - .isEqualTo("http://host.testcontainers.internal:6060/mock/500"); |
115 | | - assertThat(telemetry.rdd3.getType()).isEqualTo("Http"); |
116 | | - assertThat(telemetry.rdd3.getTarget()).isEqualTo("host.testcontainers.internal:6060"); |
117 | | - assertThat(telemetry.rdd3.getResultCode()).isEqualTo("500"); |
118 | | - assertThat(telemetry.rdd3.getProperties()) |
119 | | - .containsExactly(entry("_MS.ProcessedByMetricExtractors", "True")); |
120 | | - assertThat(telemetry.rdd3.getSuccess()).isFalse(); |
121 | | - assertThat(telemetry.rddEnvelope3.getSampleRate()).isNull(); |
122 | | - |
123 | | - SmokeTestExtension.assertParentChild( |
124 | | - telemetry.rd, telemetry.rdEnvelope, telemetry.rddEnvelope1, "GET /HttpClients/*"); |
125 | | - SmokeTestExtension.assertParentChild( |
126 | | - telemetry.rd, telemetry.rdEnvelope, telemetry.rddEnvelope2, "GET /HttpClients/*"); |
127 | | - SmokeTestExtension.assertParentChild( |
128 | | - telemetry.rd, telemetry.rdEnvelope, telemetry.rddEnvelope3, "GET /HttpClients/*"); |
| 81 | + testing.waitAndAssertTrace( |
| 82 | + trace -> |
| 83 | + trace |
| 84 | + .hasRequestSatisying( |
| 85 | + request -> |
| 86 | + request |
| 87 | + .hasSuccess(true) |
| 88 | + .hasProperty("_MS.ProcessedByMetricExtractors", "True") |
| 89 | + .hasNoParent() |
| 90 | + // TODO (trask) add this check in all smoke tests? |
| 91 | + .hasNoSampleRate() |
| 92 | + .hasTag("ai.operation.name", "GET /HttpClients/*")) |
| 93 | + .hasDependencySatisying( |
| 94 | + dependency -> |
| 95 | + dependency |
| 96 | + .hasName("GET /mock/200") |
| 97 | + .hasData(successUrlWithQueryString) |
| 98 | + .hasType("Http") |
| 99 | + .hasTarget("host.testcontainers.internal:6060") |
| 100 | + .hasResultCode("200") |
| 101 | + .hasSuccess(true) |
| 102 | + .hasProperty("_MS.ProcessedByMetricExtractors", "True") |
| 103 | + .hasParent(trace.getRequestId(0)) |
| 104 | + .hasNoSampleRate() |
| 105 | + .hasTag("ai.operation.name", "GET /HttpClients/*")) |
| 106 | + .hasDependencySatisying( |
| 107 | + dependency -> |
| 108 | + dependency |
| 109 | + .hasName("GET /mock/404") |
| 110 | + .hasData("http://host.testcontainers.internal:6060/mock/404") |
| 111 | + .hasType("Http") |
| 112 | + .hasTarget("host.testcontainers.internal:6060") |
| 113 | + .hasResultCode("404") |
| 114 | + .hasSuccess(false) |
| 115 | + .hasProperty("_MS.ProcessedByMetricExtractors", "True") |
| 116 | + .hasParent(trace.getRequestId(0)) |
| 117 | + .hasNoSampleRate() |
| 118 | + .hasTag("ai.operation.name", "GET /HttpClients/*")) |
| 119 | + .hasDependencySatisying( |
| 120 | + dependency -> |
| 121 | + dependency |
| 122 | + .hasName("GET /mock/500") |
| 123 | + .hasData("http://host.testcontainers.internal:6060/mock/500") |
| 124 | + .hasType("Http") |
| 125 | + .hasTarget("host.testcontainers.internal:6060") |
| 126 | + .hasResultCode("500") |
| 127 | + .hasSuccess(false) |
| 128 | + .hasProperty("_MS.ProcessedByMetricExtractors", "True") |
| 129 | + .hasParent(trace.getRequestId(0)) |
| 130 | + .hasNoSampleRate() |
| 131 | + .hasTag("ai.operation.name", "GET /HttpClients/*"))); |
129 | 132 | } |
130 | 133 |
|
131 | 134 | @Environment(TOMCAT_8_JAVA_8) |
|
0 commit comments