Skip to content

Commit 7e1309c

Browse files
authored
Made changes in TranscriptionData for StreamingData Parse and addede test scenario. (Azure#49030)
1 parent 83488e0 commit 7e1309c

File tree

2 files changed

+32
-1
lines changed

2 files changed

+32
-1
lines changed

sdk/communication/Azure.Communication.CallAutomation/src/Models/Streaming/Transcription/TranscriptionData.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ internal TranscriptionData(string text, string format, double confidence, long o
1919
Confidence = confidence;
2020
Offset = TimeSpan.FromTicks(offset);
2121
Duration = TimeSpan.FromTicks(duration);
22-
Words = ConvertToWordData(words);
22+
if (words != null)
23+
Words = ConvertToWordData(words);
2324
if (participantRawID != null)
2425
{
2526
Participant = CommunicationIdentifier.FromRawId(participantRawID);

sdk/communication/Azure.Communication.CallAutomation/tests/Streaming/StreamingDataParserTests.cs

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,22 @@ public void ParseTranscriptionData_Test()
131131
ValidateTranscriptionData(transcription);
132132
}
133133

134+
[Test]
135+
public void ParseTranscriptionDataWithWordsNull_Test()
136+
{
137+
var data = "{" +
138+
"\"kind\":\"TranscriptionData\"," +
139+
"\"transcriptionData\":" +
140+
"{\"text\":\"store hours\"," +
141+
"\"format\":\"display\"," +
142+
"\"offset\":49876484," +
143+
"\"duration\":9200000," +
144+
"\"participantRawID\":\"abc12345\"," +
145+
"\"resultStatus\":\"Intermediate\"}}";
146+
TranscriptionData transcription = (TranscriptionData)StreamingData.Parse(data);
147+
ValidateTranscriptionDataWithWordsNull(transcription);
148+
}
149+
134150
private static void ValidateTranscriptionMetadata(TranscriptionMetadata transcriptionMetadata)
135151
{
136152
Assert.IsNotNull(transcriptionMetadata);
@@ -140,6 +156,20 @@ private static void ValidateTranscriptionMetadata(TranscriptionMetadata transcri
140156
Assert.AreEqual("correlationId", transcriptionMetadata.CorrelationId);
141157
}
142158

159+
private static void ValidateTranscriptionDataWithWordsNull(TranscriptionData transcription)
160+
{
161+
Assert.IsNotNull(transcription);
162+
Assert.AreEqual("store hours", transcription.Text);
163+
Assert.AreEqual(TextFormat.Display, transcription.Format);
164+
Assert.AreEqual(49876484, transcription.Offset.Ticks);
165+
Assert.AreEqual(9200000, transcription.Duration.Ticks);
166+
167+
Assert.IsTrue(transcription.Participant is CommunicationIdentifier);
168+
Assert.AreEqual("abc12345", transcription.Participant.RawId);
169+
Console.WriteLine(transcription.ResultState.ToString());
170+
Assert.AreEqual(TranscriptionResultState.Intermediate, transcription.ResultState);
171+
}
172+
143173
private static void ValidateTranscriptionData(TranscriptionData transcription)
144174
{
145175
Assert.IsNotNull(transcription);

0 commit comments

Comments
 (0)