Refactor code structure and optimize performance across multiple modules
This commit is contained in:
@@ -2,6 +2,7 @@ using StellaOps.Router.Common.Abstractions;
|
||||
using StellaOps.Router.Common.Enums;
|
||||
using StellaOps.Router.Common.Models;
|
||||
|
||||
using StellaOps.TestKit;
|
||||
namespace StellaOps.Router.Common.Tests;
|
||||
|
||||
/// <summary>
|
||||
@@ -11,7 +12,8 @@ public sealed class RoutingDeterminismTests
|
||||
{
|
||||
#region Core Determinism Property Tests
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void SameContextAndConnections_AlwaysSelectsSameRoute()
|
||||
{
|
||||
// Arrange
|
||||
@@ -32,7 +34,8 @@ public sealed class RoutingDeterminismTests
|
||||
results.Should().AllBeEquivalentTo(results[0]);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void DifferentConnectionOrder_ProducesSameResult()
|
||||
{
|
||||
// Arrange
|
||||
@@ -57,7 +60,8 @@ public sealed class RoutingDeterminismTests
|
||||
result1.ConnectionId.Should().Be(result2.ConnectionId);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void SamePathAndMethod_WithSameHeaders_ProducesSameRouteKey()
|
||||
{
|
||||
// Arrange
|
||||
@@ -97,7 +101,8 @@ public sealed class RoutingDeterminismTests
|
||||
|
||||
#region Region Affinity Determinism Tests
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void SameRegion_AlwaysPreferredWhenAvailable()
|
||||
{
|
||||
// Arrange
|
||||
@@ -117,7 +122,8 @@ public sealed class RoutingDeterminismTests
|
||||
results.Should().AllSatisfy(r => r.Instance.Region.Should().Be("us-east"));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void NoLocalRegion_FallbackIsDeterministic()
|
||||
{
|
||||
// Arrange
|
||||
@@ -142,7 +148,8 @@ public sealed class RoutingDeterminismTests
|
||||
|
||||
#region Version Selection Determinism Tests
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void SameRequestedVersion_AlwaysSelectsMatchingConnection()
|
||||
{
|
||||
// Arrange
|
||||
@@ -163,7 +170,8 @@ public sealed class RoutingDeterminismTests
|
||||
results.Should().AllSatisfy(r => r.Instance.Version.Should().Be("2.0.0"));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void NoVersionRequested_LatestStableIsSelectedDeterministically()
|
||||
{
|
||||
// Arrange
|
||||
@@ -188,7 +196,8 @@ public sealed class RoutingDeterminismTests
|
||||
|
||||
#region Health Status Determinism Tests
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void HealthyConnectionsPreferred_Deterministically()
|
||||
{
|
||||
// Arrange
|
||||
@@ -209,7 +218,8 @@ public sealed class RoutingDeterminismTests
|
||||
results.Should().AllSatisfy(r => r.ConnectionId.Should().Be("conn-healthy"));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void DegradedConnectionSelected_WhenNoHealthyAvailable()
|
||||
{
|
||||
// Arrange
|
||||
@@ -231,7 +241,8 @@ public sealed class RoutingDeterminismTests
|
||||
results[0].Status.Should().Be(InstanceHealthStatus.Degraded);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void DrainingConnectionsExcluded()
|
||||
{
|
||||
// Arrange
|
||||
@@ -253,7 +264,8 @@ public sealed class RoutingDeterminismTests
|
||||
|
||||
#region Multi-Criteria Determinism Tests
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void RegionThenVersionThenHealth_OrderingIsDeterministic()
|
||||
{
|
||||
// Arrange
|
||||
@@ -288,7 +300,8 @@ public sealed class RoutingDeterminismTests
|
||||
});
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void TieBreaker_UsesConnectionIdForConsistency()
|
||||
{
|
||||
// Arrange - Two identical connections except ID
|
||||
@@ -312,7 +325,8 @@ public sealed class RoutingDeterminismTests
|
||||
|
||||
#region Endpoint Matching Determinism Tests
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void PathParameterMatching_IsDeterministic()
|
||||
{
|
||||
// Arrange
|
||||
@@ -335,7 +349,8 @@ public sealed class RoutingDeterminismTests
|
||||
}
|
||||
}
|
||||
|
||||
[Fact]
|
||||
[Trait("Category", TestCategories.Unit)]
|
||||
[Fact]
|
||||
public void MultipleEndpoints_SamePath_SelectsFirstMatchDeterministically()
|
||||
{
|
||||
// Arrange
|
||||
|
||||
Reference in New Issue
Block a user