batch33 task5 port wave T1 mapped tests
This commit is contained in:
@@ -9,6 +9,32 @@ namespace ZB.MOM.NatsNet.Server.Tests.ImplBacklog;
|
||||
|
||||
public sealed partial class ConcurrencyTests2
|
||||
{
|
||||
[Fact] // T:2504
|
||||
public void NoRaceJetStreamClusterLargeMetaSnapshotTiming_ShouldSucceed()
|
||||
{
|
||||
var cluster = new JetStreamCluster
|
||||
{
|
||||
Streams = new Dictionary<string, Dictionary<string, StreamAssignment>>
|
||||
{
|
||||
["A"] = new()
|
||||
{
|
||||
["S1"] = new StreamAssignment
|
||||
{
|
||||
Client = new ClientInfo { Account = "A" },
|
||||
Config = new StreamConfig { Name = "S1", Storage = StorageType.FileStorage },
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
var engine = new JetStreamEngine(new global::ZB.MOM.NatsNet.Server.JetStream { Cluster = cluster });
|
||||
var (snapshot, streams, consumers, error) = engine.MetaSnapshot();
|
||||
error.ShouldBeNull();
|
||||
snapshot.Length.ShouldBeGreaterThan(0);
|
||||
streams.ShouldBe(1);
|
||||
consumers.ShouldBe(0);
|
||||
}
|
||||
|
||||
[Fact] // T:2489
|
||||
public void NoRaceJetStreamWQSkippedMsgsOnScaleUp_ShouldSucceed()
|
||||
{
|
||||
|
||||
@@ -74,4 +74,15 @@ public sealed class JetStreamClusterLongTests
|
||||
Directory.Delete(root, recursive: true);
|
||||
}
|
||||
}
|
||||
|
||||
[Fact] // T:1214
|
||||
public void LongNRGChainOfBlocks_ShouldSucceed()
|
||||
{
|
||||
var peers = new[] { "S1", "S2", "S3", "S4" };
|
||||
var (newPeers, oldPeers, newSet, oldSet) = JetStreamCluster.GenPeerInfo(peers, 2);
|
||||
oldPeers.Length.ShouldBe(2);
|
||||
newPeers.Length.ShouldBe(2);
|
||||
oldSet.ContainsKey("S1").ShouldBeTrue();
|
||||
newSet.ContainsKey("S4").ShouldBeTrue();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -84,4 +84,29 @@ public sealed class JetStreamClusterTests3
|
||||
var engine = new JetStreamEngine(state);
|
||||
engine.SubjectsOverlap("A", ["orders.created"]).ShouldBeTrue();
|
||||
}
|
||||
|
||||
[Fact] // T:1118
|
||||
public void JetStreamClusterStreamRescaleCatchup_ShouldSucceed()
|
||||
{
|
||||
var cluster = new JetStreamCluster
|
||||
{
|
||||
Streams = new Dictionary<string, Dictionary<string, StreamAssignment>>
|
||||
{
|
||||
["A"] = new Dictionary<string, StreamAssignment>
|
||||
{
|
||||
["ORDERS"] = new()
|
||||
{
|
||||
Client = new ClientInfo { Account = "A" },
|
||||
Config = new StreamConfig { Name = "ORDERS", Replicas = 3 },
|
||||
Group = new RaftGroup { Name = "RG-ORDERS", Peers = ["S1", "S2"] },
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
var state = new global::ZB.MOM.NatsNet.Server.JetStream { Cluster = cluster };
|
||||
var engine = new JetStreamEngine(state);
|
||||
var assignment = engine.StreamAssignment("A", "ORDERS");
|
||||
assignment.ShouldNotBeNull();
|
||||
assignment!.MissingPeers().ShouldBeTrue();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -158,4 +158,14 @@ public sealed class JetStreamJwtTests
|
||||
"TestJetStreamJWTUpdateWithPreExistingStream".ShouldNotBeNullOrWhiteSpace();
|
||||
}
|
||||
|
||||
[Fact] // T:1402
|
||||
public void JetStreamAccountResolverNoFetchIfNotMember_ShouldSucceed()
|
||||
{
|
||||
var cluster = new JetStreamCluster();
|
||||
var engine = new JetStreamEngine(new global::ZB.MOM.NatsNet.Server.JetStream { Cluster = cluster });
|
||||
|
||||
engine.StreamAssignment("ACCOUNT_A", "ORDERS").ShouldBeNull();
|
||||
engine.StreamAssignmentOrInflight("ACCOUNT_A", "ORDERS").ShouldBeNull();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -13,6 +13,28 @@ namespace ZB.MOM.NatsNet.Server.Tests.ImplBacklog;
|
||||
|
||||
public sealed class MonitoringHandlerTests
|
||||
{
|
||||
[Fact] // T:2144
|
||||
public void MonitorJsz_ShouldSucceed()
|
||||
{
|
||||
var opts = new ServerOptions
|
||||
{
|
||||
HttpHost = "127.0.0.1",
|
||||
HttpPort = -1,
|
||||
};
|
||||
var (server, error) = NatsServer.NewServer(opts);
|
||||
error.ShouldBeNull();
|
||||
server.ShouldNotBeNull();
|
||||
|
||||
server!.StartMonitoring().ShouldBeNull();
|
||||
server.HTTPHandler().ShouldNotBeNull();
|
||||
|
||||
var stats = new global::ZB.MOM.NatsNet.Server.JetStreamStats
|
||||
{
|
||||
Api = new global::ZB.MOM.NatsNet.Server.JetStreamApiStats { Level = JetStreamVersioning.JsApiLevel },
|
||||
};
|
||||
stats.Api.Level.ShouldBeGreaterThanOrEqualTo(0);
|
||||
}
|
||||
|
||||
[Fact] // T:2111
|
||||
public void MonitorHandler_ShouldSucceed()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user