using NATS.Server.LeafNodes;

namespace NATS.Server.Tests.LeafNodes;

public class LeafLoopTransparencyRuntimeTests
{
    [Fact]
    public void Transport_internal_reply_and_loop_markers_never_leak_to_client_visible_subjects()
    {
        var nested = LeafLoopDetector.Mark(
            LeafLoopDetector.Mark("orders.created", "S1"),
            "S2");

        LeafLoopDetector.TryUnmark(nested, out var unmarked).ShouldBeTrue();
        unmarked.ShouldBe("orders.created");
        unmarked.ShouldNotStartWith("$LDS.");
    }
}
