Skip to content
This repository was archived by the owner on Dec 4, 2023. It is now read-only.

Commit 7740765

Browse files
authored
[Bot-ApplicationInsights] Fix disparities (#1217)
* Remove test scope of botbuilder package * Send correct typo of telemetry depending unit test type * Add missing unit test checking null context for onTurn middleware * Set timestamp to AvailabilityTelemetry * Add Assert and Act comments in unit tests
1 parent c170250 commit 7740765

4 files changed

Lines changed: 18 additions & 4 deletions

File tree

libraries/bot-applicationinsights/pom.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,6 @@
7575
<artifactId>bot-builder</artifactId>
7676
<version>${project.version}</version>
7777
<type>test-jar</type>
78-
<scope>test</scope>
7978
</dependency>
8079
</dependencies>
8180

libraries/bot-applicationinsights/src/main/java/com/microsoft/bot/applicationinsights/ApplicationInsightsBotTelemetryClient.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,7 @@ public void trackAvailability(
9393
concurrentMetrics,
9494
concurrentProperties
9595
);
96+
telemetry.setTimestamp(new Date(timeStamp.toInstant().toEpochMilli()));
9697
if (properties != null) {
9798
for (Map.Entry<String, String> pair : properties.entrySet()) {
9899
telemetry.getProperties().put(pair.getKey(), pair.getValue());

libraries/bot-applicationinsights/src/test/java/com/microsoft/bot/applicationinsights/BotTelemetryClientTests.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ public void trackEventTest() {
100100
Assert.assertEquals("test", eventTelemetry.getName());
101101
Assert.assertEquals("value", eventTelemetry.getProperties().get("hello"));
102102
Assert.assertEquals(0, Double.compare(0.6, eventTelemetry.getMetrics().get("metric")));
103-
}).send(Mockito.any(AvailabilityTelemetry.class));
103+
}).send(Mockito.any(EventTelemetry.class));
104104
}
105105

106106
@Test
@@ -112,7 +112,8 @@ public void trackDependencyTest() {
112112
"data",
113113
OffsetDateTime.now(),
114114
Duration.ofNanos(1000),
115-
"result", false);
115+
"result",
116+
false);
116117

117118
Mockito.verify(mockTelemetryChannel, invocations -> {
118119
RemoteDependencyTelemetry remoteDependencyTelemetry = invocations.getAllInvocations().get(0).getArgument(0);
@@ -122,7 +123,7 @@ public void trackDependencyTest() {
122123
Assert.assertEquals("dependencyname", remoteDependencyTelemetry.getName());
123124
Assert.assertEquals("result", remoteDependencyTelemetry.getResultCode());
124125
Assert.assertFalse(remoteDependencyTelemetry.getSuccess());
125-
}).send(Mockito.any(AvailabilityTelemetry.class));
126+
}).send(Mockito.any(RemoteDependencyTelemetry.class));
126127
}
127128

128129
@Test

libraries/bot-applicationinsights/src/test/java/com/microsoft/bot/applicationinsights/TelemetryInitializerTests.java

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -129,4 +129,17 @@ public void telemetryInitializerMiddlewareNotLogActivitiesDisabled() {
129129
List<String> eventNames = eventNameCaptor.getAllValues();
130130
Assert.assertEquals(0, eventNames.size());
131131
}
132+
133+
@Test
134+
public void telemetryInitializerMiddlewareWithUndefinedContext() {
135+
// Arrange
136+
BotTelemetryClient mockTelemetryClient = Mockito.mock(BotTelemetryClient.class);
137+
TelemetryLoggerMiddleware telemetryLoggerMiddleware = new TelemetryLoggerMiddleware(mockTelemetryClient, false);
138+
TelemetryInitializerMiddleware telemetryInitializerMiddleware = new TelemetryInitializerMiddleware(telemetryLoggerMiddleware, true);
139+
// Assert
140+
Assert.assertThrows(IllegalArgumentException.class, () -> {
141+
// Act
142+
telemetryInitializerMiddleware.onTurn(null, () -> null);
143+
});
144+
}
132145
}

0 commit comments

Comments
 (0)