namespace NATS.Server.Monitoring.Tests;

public class VarzSlowConsumerBreakdownTests
{
    [Fact]
    public async Task Varz_contains_slow_consumer_breakdown_fields()
    {
        await using var fx = await MonitoringParityFixture.StartAsync();
        var varz = await fx.GetVarzAsync();

        varz.SlowConsumerStats.ShouldNotBeNull();
        varz.SlowConsumerStats.Clients.ShouldBeGreaterThanOrEqualTo((ulong)0);
        varz.SlowConsumerStats.Routes.ShouldBeGreaterThanOrEqualTo((ulong)0);
        varz.SlowConsumerStats.Gateways.ShouldBeGreaterThanOrEqualTo((ulong)0);
        varz.SlowConsumerStats.Leafs.ShouldBeGreaterThanOrEqualTo((ulong)0);
    }
}
