fix(r2-02): range-validation warnings on the resilience override form (01/S-6 authoring layer)
This commit is contained in:
@@ -34,6 +34,36 @@ public class ResilienceFormModelTests
|
||||
m.Policies["Read"].IsEmpty.ShouldBeTrue();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Validate_flags_out_of_range_values_with_capability_and_range()
|
||||
{
|
||||
var m = new ResilienceFormModel();
|
||||
m.Policies["Read"].TimeoutSeconds = 0; // < MinTimeoutSeconds
|
||||
m.Policies["Read"].RetryCount = -1; // < MinRetryCount
|
||||
m.Policies["Read"].BreakerFailureThreshold = 1; // below Polly MinimumThroughput floor
|
||||
|
||||
var msgs = m.Validate();
|
||||
|
||||
msgs.Count.ShouldBe(3);
|
||||
msgs.ShouldContain(s => s.Contains("Read") && s.Contains("timeout"));
|
||||
msgs.ShouldContain(s => s.Contains("Read") && s.Contains("retries"));
|
||||
msgs.ShouldContain(s => s.Contains("Read") && s.Contains("breaker"));
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Validate_passes_in_range_and_blank()
|
||||
{
|
||||
var blank = new ResilienceFormModel();
|
||||
blank.Validate().ShouldBeEmpty();
|
||||
|
||||
var inRange = new ResilienceFormModel();
|
||||
inRange.Policies["Read"].TimeoutSeconds = 5;
|
||||
inRange.Policies["Read"].RetryCount = 3;
|
||||
inRange.Policies["Read"].BreakerFailureThreshold = 4;
|
||||
inRange.Policies["Write"].BreakerFailureThreshold = 0; // 0 = breaker off, legal
|
||||
inRange.Validate().ShouldBeEmpty();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void Emitted_json_is_consumable_by_the_runtime_parser()
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user