test(batch38-t3): add cluster lifecycle consistency mapped tests

This commit is contained in:
Joseph Doherty
2026-03-01 00:52:32 -05:00
parent 845f8695ad
commit 77004b0dd6
4 changed files with 118 additions and 0 deletions

View File

@@ -99,4 +99,36 @@ public sealed class JetStreamClusterTests4
updates.RemoveConsumers.ShouldContainKey("A:S");
}
[Fact]
public void JetStreamClusterMetaSnapshotReCreateConsistency_ShouldSucceed()
{
var updates = new RecoveryUpdates();
var stream = new StreamAssignment
{
Client = new ClientInfo { Account = "A" },
Config = new StreamConfig { Name = "S", Subjects = ["foo"] },
};
updates.AddStream(stream);
updates.RemoveStream(stream);
updates.AddStream(stream);
updates.AddStreams.ShouldContainKey("A:S");
updates.RemoveStreams.ShouldContainKey("A:S");
}
[Fact]
public void JetStreamClusterMetaSnapshotConsumerDeleteConsistency_ShouldSucceed()
{
var cluster = new JetStreamCluster();
var consumer = new ConsumerAssignment { Name = "C1", Stream = "S" };
cluster.TrackInflightConsumerProposal("A", "S", consumer, deleted: false);
cluster.TrackInflightConsumerProposal("A", "S", consumer, deleted: true);
cluster.RemoveInflightConsumerProposal("A", "S", "C1");
cluster.RemoveInflightConsumerProposal("A", "S", "C1");
cluster.InflightConsumers.ContainsKey("A").ShouldBeFalse();
}
}