Skip to content

Commit 9288835

Browse files
authored
Merge pull request #1005 from microsoft/buildme/fix-sporadic-test-failure
Fix sporadic test failure
2 parents 16fc063 + b481572 commit 9288835

File tree

1 file changed

+8
-2
lines changed
  • test/smoke/framework/testCore/src/main/java/com/microsoft/applicationinsights/smoketest

1 file changed

+8
-2
lines changed

test/smoke/framework/testCore/src/main/java/com/microsoft/applicationinsights/smoketest/AiSmokeTest.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@
1414
import com.microsoft.applicationinsights.internal.schemav2.Data;
1515
import com.microsoft.applicationinsights.internal.schemav2.Domain;
1616
import com.microsoft.applicationinsights.internal.schemav2.Envelope;
17+
import com.microsoft.applicationinsights.internal.schemav2.RequestData;
1718
import com.microsoft.applicationinsights.smoketest.docker.AiDockerClient;
1819
import com.microsoft.applicationinsights.smoketest.docker.ContainerInfo;
1920
import com.microsoft.applicationinsights.smoketest.exceptions.SmokeTestException;
@@ -346,7 +347,8 @@ protected static void waitForApplicationToStart() throws Exception {
346347
final ContainerInfo containerInfo = currentContainerInfo.get();
347348
try {
348349
System.out.printf("Test app health check: Waiting for %s to start...%n", warFileName);
349-
waitForUrlWithRetries(getBaseUrl(), APPLICATION_READY_TIMEOUT_SECONDS, TimeUnit.SECONDS,
350+
final String contextRootUrl = getBaseUrl() + "/";
351+
waitForUrlWithRetries(contextRootUrl, APPLICATION_READY_TIMEOUT_SECONDS, TimeUnit.SECONDS,
350352
String.format("%s on %s", getAppContext(), containerInfo.getImageName()),
351353
HEALTH_CHECK_RETRIES);
352354
System.out.println("Test app health check complete.");
@@ -355,7 +357,11 @@ protected static void waitForApplicationToStart() throws Exception {
355357
mockedIngestion.waitForItem(new Predicate<Envelope>() {
356358
@Override
357359
public boolean apply(Envelope input) {
358-
return "RequestData".equals(input.getData().getBaseType());
360+
if (!"RequestData".equals(input.getData().getBaseType())) {
361+
return false;
362+
}
363+
RequestData data = (RequestData) ((Data) input.getData()).getBaseData();
364+
return contextRootUrl.equals(data.getUrl()) && "200".equals(data.getResponseCode());
359365
}
360366
}, TELEMETRY_RECEIVE_TIMEOUT_SECONDS, TimeUnit.SECONDS);
361367
System.out.printf("Received request telemetry after %.3f seconds...%n",

0 commit comments

Comments
 (0)