namespace NATS.Server.Tests;

public class JetStreamJwtLimitTests
{
    [Fact]
    public async Task Account_limit_rejects_stream_create_when_max_streams_reached()
    {
        await using var fixture = await JetStreamApiFixture.StartJwtLimitedAccountAsync(maxStreams: 1);

        (await fixture.CreateStreamAsync("S1", subjects: ["s1.*"])) .Error.ShouldBeNull();
        var second = await fixture.CreateStreamAsync("S2", subjects: ["s2.*"]);

        second.Error.ShouldNotBeNull();
        second.Error!.Code.ShouldBe(10027);
    }
}
