using System.Diagnostics; using Shouldly; using ZB.MOM.NatsNet.Server; namespace ZB.MOM.NatsNet.Server.Tests.ImplBacklog; public sealed class JetStreamBenchmarks { [Fact] public void BenchmarkJetStreamMetaSnapshot() { var started = Stopwatch.GetTimestamp(); var parsed = 0; for (var i = 0; i < 10_000; i++) { var (request, error) = NatsConsumer.NextReqFromMsg("{\"batch\":1}"u8); error.ShouldBeNull(); request.ShouldNotBeNull(); if (request!.Batch == 1) parsed++; } parsed.ShouldBe(10_000); var elapsed = Stopwatch.GetElapsedTime(started); elapsed.ShouldBeLessThan(TimeSpan.FromSeconds(5)); } }