Skip to content

Commit 1a565f5

Browse files
committed
Add tests
1 parent 8518ee1 commit 1a565f5

File tree

3 files changed

+61
-1
lines changed

3 files changed

+61
-1
lines changed

tests/Chat/ChatSmokeTests.cs

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -484,6 +484,36 @@ public void SerializeCompoundContent()
484484
Assert.That(serializedMessage, Does.Contain("openai.com/test"));
485485
}
486486

487+
[Test]
488+
public void CanSerializeChatMessage()
489+
{
490+
var text = "Hello, world!";
491+
ChatMessage message = new UserChatMessage(text);
492+
message.Patch.Set("$.custom_property"u8, "custom_property");
493+
494+
BinaryData serialized = ModelReaderWriter.Write(message);
495+
using JsonDocument doc = JsonDocument.Parse(serialized.ToString());
496+
JsonElement root = doc.RootElement;
497+
498+
Assert.That(root, Is.Not.Null);
499+
Assert.That(root.ValueKind, Is.EqualTo(JsonValueKind.Object));
500+
501+
Assert.That(root.TryGetProperty("content", out JsonElement contentProperty), Is.True);
502+
Assert.That(contentProperty, Is.Not.Null);
503+
Assert.That(contentProperty.ValueKind, Is.EqualTo(JsonValueKind.String));
504+
Assert.That(contentProperty.ToString(), Is.EqualTo(text));
505+
506+
Assert.That(root.TryGetProperty("role", out JsonElement roleProperty), Is.True);
507+
Assert.That(roleProperty, Is.Not.Null);
508+
Assert.That(roleProperty.ValueKind, Is.EqualTo(JsonValueKind.String));
509+
Assert.That(roleProperty.ToString(), Is.EqualTo("user"));
510+
511+
Assert.That(root.TryGetProperty("custom_property", out JsonElement customProperty), Is.True);
512+
Assert.That(customProperty, Is.Not.Null);
513+
Assert.That(customProperty.ValueKind, Is.EqualTo(JsonValueKind.String));
514+
Assert.That(customProperty.ToString(), Is.EqualTo("custom_property"));
515+
}
516+
487517
[Test]
488518
public void SerializeRefusalMessages()
489519
{

tests/OpenAI.Tests.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<NoWarn>$(NoWarn);CS1591</NoWarn>
77

88
<!-- OPENAI001 - Ignore experimental warnings-->
9-
<NoWarn>$(NoWarn);OPENAI001;</NoWarn>
9+
<NoWarn>$(NoWarn);OPENAI001;SCME0001;</NoWarn>
1010

1111
<LangVersion>latest</LangVersion>
1212
</PropertyGroup>

tests/Responses/ResponsesSmokeTests.cs

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -382,4 +382,34 @@ public void SerializeCodeInterpreterToolContainerAsObject(bool fromRawJson)
382382
Assert.That(additionalPropertyProperty.ValueKind, Is.EqualTo(JsonValueKind.True));
383383
}
384384
}
385+
386+
[Test]
387+
public void CanSerializeCodeInterpreterCallLogsOutput()
388+
{
389+
var customLogs = "Custom logs!";
390+
CodeInterpreterCallLogsOutput logOutput = new CodeInterpreterCallLogsOutput(customLogs);
391+
logOutput.Patch.Set("$.custom_property"u8, "custom_property");
392+
393+
BinaryData serialized = ModelReaderWriter.Write(logOutput);
394+
using JsonDocument doc = JsonDocument.Parse(serialized.ToString());
395+
JsonElement root = doc.RootElement;
396+
397+
Assert.That(root, Is.Not.Null);
398+
Assert.That(root.ValueKind, Is.EqualTo(JsonValueKind.Object));
399+
400+
Assert.That(root.TryGetProperty("type", out JsonElement typeProperty), Is.True);
401+
Assert.That(typeProperty, Is.Not.Null);
402+
Assert.That(typeProperty.ValueKind, Is.EqualTo(JsonValueKind.String));
403+
Assert.That(typeProperty.ToString(), Is.EqualTo("logs"));
404+
405+
Assert.That(root.TryGetProperty("logs", out JsonElement logsProperty), Is.True);
406+
Assert.That(logsProperty, Is.Not.Null);
407+
Assert.That(logsProperty.ValueKind, Is.EqualTo(JsonValueKind.String));
408+
Assert.That(logsProperty.ToString(), Is.EqualTo(customLogs));
409+
410+
Assert.That(root.TryGetProperty("custom_property", out JsonElement customProperty), Is.True);
411+
Assert.That(customProperty, Is.Not.Null);
412+
Assert.That(customProperty.ValueKind, Is.EqualTo(JsonValueKind.String));
413+
Assert.That(customProperty.ToString(), Is.EqualTo("custom_property"));
414+
}
385415
}

0 commit comments

Comments
 (0)