public void GIVENEmptyResult_WHENQueryResultAdapterIsInvoked_THENExceptionIsBeingThrown() { // Arrange const QueryResult emptyResult = null; // Act // Assert Assert.Throws <ArgumentNullException>(() => new QueryResultAdapter(emptyResult)); }
public void GIVENEmptyQueryResult_WHENTrackEventIsInvoked_THENExceptionIsBeingThrown( IMessageActivity activity, InstrumentationSettings settings) { // Arrange var instrumentation = new QnAInstrumentation(this.telemetryClient, settings); const QueryResult emptyQueryResult = null; // Act // Assert Assert.Throws <ArgumentNullException>(() => instrumentation.TrackEvent(activity, emptyQueryResult)); }
public void GIVENAnyActivity_WHENTrackEventIsInvoked_THENEventTelemetryIsBeingSent( IMessageActivity activity, QueryResult queryResult, InstrumentationSettings settings) { // Arrange var instrumentation = new QnAInstrumentation(this.telemetryClient, settings); // Act instrumentation.TrackEvent(activity, queryResult); // Assert this.mockTelemetryChannel.Verify( tc => tc.Send(It.Is <EventTelemetry>(t => t.Name == EventTypes.QnaEvent && t.Properties[QnAConstants.UserQuery] == activity.AsMessageActivity().Text&& t.Properties[QnAConstants.KnowledgeBaseQuestion] == string.Join(QuestionsSeparator.Separator, queryResult.Questions) && t.Properties[QnAConstants.KnowledgeBaseAnswer] == queryResult.Answer && t.Properties[QnAConstants.Score] == queryResult.Score.ToString(CultureInfo.InvariantCulture))), Times.Once); }
public QueryResultAdapter(Microsoft.Bot.Builder.AI.QnA.QueryResult queryResult) { this.queryResult = queryResult ?? throw new ArgumentNullException(nameof(queryResult)); }
public void GIVENAnyQuery_WHENQueryResultAdapterIsInvoked_THENQueryResultIsMapped(QueryResult queryResult) { // Arrange var adapter = new QueryResultAdapter(queryResult); // Act var convertedQueryResult = adapter.QueryResult; // Assert Assert.Equal(convertedQueryResult.KnowledgeBaseQuestion, string.Join(QuestionsSeparator.Separator, queryResult.Questions)); Assert.Equal(convertedQueryResult.KnowledgeBaseAnswer, queryResult.Answer); Assert.Equal(convertedQueryResult.Score, queryResult.Score.ToString(CultureInfo.InvariantCulture)); }