using NATS.Server.Gateways;

namespace NATS.Server.Gateways.Tests;

public class GatewayAdvancedRemapRuntimeTests
{
    [Fact]
    public void Transport_internal_reply_and_loop_markers_never_leak_to_client_visible_subjects()
    {
        const string clientReply = "_INBOX.123";
        var nested = ReplyMapper.ToGatewayReply(
            ReplyMapper.ToGatewayReply(clientReply, "CLUSTER-A"),
            "CLUSTER-B");

        ReplyMapper.TryRestoreGatewayReply(nested, out var restored).ShouldBeTrue();
        restored.ShouldBe(clientReply);
        restored.ShouldNotStartWith("_GR_.");
    }
}
