Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 11 additions & 14 deletions tools/speed-comparison/UnifiedTests/SetupTeardownTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -353,13 +353,8 @@ public async Task AsyncDictionaryOperationTest()
public void JsonOperationTest()
{
// Simulate JSON serialization
var data = new
{
Id = 123,
Name = "Test Data",
Values = Enumerable.Range(0, 50).ToArray()
};
var json = System.Text.Json.JsonSerializer.Serialize(data);
var data = new JsonPayload(123, "Test Data", Enumerable.Range(0, 50).ToArray());
var json = System.Text.Json.JsonSerializer.Serialize(data, BenchmarkJsonContext.Default.JsonPayload);
_logBuilder.AppendLine($"JSON length: {json.Length}");
}

Expand All @@ -368,13 +363,15 @@ public async Task AsyncJsonOperationTest()
{
// Simulate async JSON operations
await Task.Delay(10);
var data = new
{
Id = 123,
Name = "Test Data",
Values = Enumerable.Range(0, 50).ToArray()
};
var json = System.Text.Json.JsonSerializer.Serialize(data);
var data = new JsonPayload(123, "Test Data", Enumerable.Range(0, 50).ToArray());
var json = System.Text.Json.JsonSerializer.Serialize(data, BenchmarkJsonContext.Default.JsonPayload);
_logBuilder.AppendLine($"Async JSON length: {json.Length}");
}
}

// Concrete DTO + source-generated serializer context so JSON tests work under Native AOT,
// where reflection-based System.Text.Json serialization is disabled.
public sealed record JsonPayload(int Id, string Name, int[] Values);

[System.Text.Json.Serialization.JsonSerializable(typeof(JsonPayload))]
internal partial class BenchmarkJsonContext : System.Text.Json.Serialization.JsonSerializerContext;
Loading