openai/openai-dotnet

Public

mirrored from https://github.com/openai/openai-dotnetAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
joseharriaga/README-version

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

examples/MockClientExamples.cs

44lines · modecode

1using System.ClientModel.Primitives;
2using System.ClientModel;
3using Moq;
4using NUnit.Framework;
5using OpenAI.Audio;
6
7namespace OpenAI.Examples.Miscellaneous;
8
9public partial class MockClientExamples
10{
11 [Test]
12 public void MockClient()
13 {
14 // Instantiate mocks and the AudioTranscription object.
15
16 Mock<AudioClient> mockClient = new();
17 Mock<ClientResult<AudioTranscription>> mockResult = new(null, Mock.Of<PipelineResponse>());
18 AudioTranscription transcription = OpenAIAudioModelFactory.AudioTranscription(text: "I swear I saw an apple flying yesterday!");
19
20 // Set up mocks' properties and methods.
21
22 mockResult
23 .SetupGet(result => result.Value)
24 .Returns(transcription);
25
26 mockClient.Setup(client => client.TranscribeAudio(
27 It.IsAny<string>(),
28 It.IsAny<AudioTranscriptionOptions>()))
29 .Returns(mockResult.Object);
30
31 // Perform validation.
32
33 AudioClient client = mockClient.Object;
34 bool containsSecretWord = ContainsSecretWord(client, "<audioFilePath>", "apple");
35
36 Assert.That(containsSecretWord, Is.True);
37 }
38
39 public bool ContainsSecretWord(AudioClient client, string audioFilePath, string secretWord)
40 {
41 AudioTranscription transcription = client.TranscribeAudio(audioFilePath);
42 return transcription.Text.Contains(secretWord);
43 }
44}