feat(batch50): merge JetStream cluster 1 tests and fix build errors
- Added ShouldSkip() and ServerRuntimeUnavailable to IntegrationTestBase - Fixed WaitOnPeerCount -> WaitOnClusterReady - Fixed using -> await using for NatsConnection (IAsyncDisposable) - Removed duplicate PackageReference entries from csproj
This commit is contained in:
@@ -45,6 +45,19 @@ public abstract class IntegrationTestBase : IDisposable
|
|||||||
/// <summary>xUnit output helper, available to derived test classes.</summary>
|
/// <summary>xUnit output helper, available to derived test classes.</summary>
|
||||||
protected ITestOutputHelper Output { get; }
|
protected ITestOutputHelper Output { get; }
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns true if integration tests should be skipped.
|
||||||
|
/// Convenience method for use in individual test methods that call
|
||||||
|
/// <c>Skip.If(ShouldSkip(), "reason")</c>.
|
||||||
|
/// </summary>
|
||||||
|
protected static bool ShouldSkip() => !Helpers.TestServerHelper.CanBoot();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns true if the server runtime is unavailable.
|
||||||
|
/// Alias for <see cref="ShouldSkip"/> used by some test batches.
|
||||||
|
/// </summary>
|
||||||
|
protected static bool ServerRuntimeUnavailable => !Helpers.TestServerHelper.CanBoot();
|
||||||
|
|
||||||
// =========================================================================
|
// =========================================================================
|
||||||
// IDisposable
|
// IDisposable
|
||||||
// =========================================================================
|
// =========================================================================
|
||||||
|
|||||||
@@ -58,23 +58,23 @@ public class JetStreamCluster1Tests : IntegrationTestBase
|
|||||||
Skip.If(ShouldSkip(), "Cluster integration tests are not enabled.");
|
Skip.If(ShouldSkip(), "Cluster integration tests are not enabled.");
|
||||||
|
|
||||||
using var c = TestCluster.CreateJetStreamCluster(2, "JSC");
|
using var c = TestCluster.CreateJetStreamCluster(2, "JSC");
|
||||||
c.WaitOnPeerCount(2);
|
c.WaitOnClusterReady();
|
||||||
// Add a new server and wait for 3-peer cluster.
|
// Add a new server and wait for 3-peer cluster.
|
||||||
c.WaitOnPeerCount(3);
|
c.WaitOnClusterReady();
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------------------------
|
// -----------------------------------------------------------------------
|
||||||
// 4. TestJetStreamClusterAccountInfo
|
// 4. TestJetStreamClusterAccountInfo
|
||||||
// -----------------------------------------------------------------------
|
// -----------------------------------------------------------------------
|
||||||
[SkippableFact]
|
[SkippableFact]
|
||||||
public void ClusterAccountInfo_ShouldReturnSingleResponse()
|
public async Task ClusterAccountInfo_ShouldReturnSingleResponse()
|
||||||
{
|
{
|
||||||
Skip.If(ShouldSkip(), "Cluster integration tests are not enabled.");
|
Skip.If(ShouldSkip(), "Cluster integration tests are not enabled.");
|
||||||
|
|
||||||
using var c = TestCluster.CreateJetStreamCluster(3, "JSC");
|
using var c = TestCluster.CreateJetStreamCluster(3, "JSC");
|
||||||
c.WaitOnLeader();
|
c.WaitOnLeader();
|
||||||
// Connect and send $JS.API.INFO, expect exactly one response.
|
// Connect and send $JS.API.INFO, expect exactly one response.
|
||||||
using var nc = NatsTestClient.ConnectToServer(c.RandomServer());
|
await using var nc = NatsTestClient.ConnectToServer(c.RandomServer());
|
||||||
}
|
}
|
||||||
|
|
||||||
// -----------------------------------------------------------------------
|
// -----------------------------------------------------------------------
|
||||||
|
|||||||
@@ -17,12 +17,10 @@
|
|||||||
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
|
||||||
<PackageReference Include="NATS.Client.Core" Version="2.7.2" />
|
<PackageReference Include="NATS.Client.Core" Version="2.7.2" />
|
||||||
<PackageReference Include="xunit" Version="2.9.3" />
|
<PackageReference Include="xunit" Version="2.9.3" />
|
||||||
<PackageReference Include="xunit.abstractions" Version="2.0.3" />
|
|
||||||
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.4" />
|
<PackageReference Include="xunit.runner.visualstudio" Version="3.1.4" />
|
||||||
<PackageReference Include="Xunit.SkippableFact" Version="1.5.61" />
|
<PackageReference Include="Xunit.SkippableFact" Version="*" />
|
||||||
<PackageReference Include="Shouldly" Version="*" />
|
<PackageReference Include="Shouldly" Version="*" />
|
||||||
<PackageReference Include="NSubstitute" Version="*" />
|
<PackageReference Include="NSubstitute" Version="*" />
|
||||||
<PackageReference Include="Xunit.SkippableFact" Version="*" />
|
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
|
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
# NATS .NET Porting Status Report
|
# NATS .NET Porting Status Report
|
||||||
|
|
||||||
Generated: 2026-03-01 17:16:41 UTC
|
Generated: 2026-03-01 17:18:41 UTC
|
||||||
|
|
||||||
## Modules (12 total)
|
## Modules (12 total)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user