perf(dcl): coalesce MxGateway alarm stream reopens across a subscribe burst (review 2026-10-21 02/P3)

This commit is contained in:
Joseph Doherty
2026-10-22 06:44:13 -04:00
parent e6406c494c
commit d8d44e0b87
7 changed files with 189 additions and 36 deletions
@@ -39,4 +39,27 @@ public class DataConnectionOptionsValidatorTests
Assert.True(result.Failed);
Assert.Contains("SeedReadMaxAttempts", result.FailureMessage);
}
/// <summary>Verifies that an out-of-range MxGateway alarm-reopen debounce is rejected (review 2026-10-21 02/P3).</summary>
/// <param name="milliseconds">The debounce under test.</param>
[Theory]
[InlineData(-1)]
[InlineData(5001)]
public void OutOfRangeMxAlarmStreamReopenDebounce_IsRejected(int milliseconds)
{
var result = Validate(new DataConnectionOptions
{
MxAlarmStreamReopenDebounce = TimeSpan.FromMilliseconds(milliseconds)
});
Assert.True(result.Failed);
Assert.Contains("MxAlarmStreamReopenDebounce", result.FailureMessage);
}
/// <summary>Verifies that a zero debounce (reopen per subscribe) is accepted.</summary>
[Fact]
public void ZeroMxAlarmStreamReopenDebounce_IsAccepted()
{
var result = Validate(new DataConnectionOptions { MxAlarmStreamReopenDebounce = TimeSpan.Zero });
Assert.True(result.Succeeded, result.FailureMessage);
}
}