From f7296b31f0da10ce4843c0816d373f2d89436485 Mon Sep 17 00:00:00 2001 From: Joe Betz Date: Wed, 12 Mar 2025 19:07:34 -0400 Subject: [PATCH] Add declarative test cases for RC.Spec.MinReadySeconds --- .../declarative_validation_test.go | 42 +++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/pkg/registry/core/replicationcontroller/declarative_validation_test.go b/pkg/registry/core/replicationcontroller/declarative_validation_test.go index 441b4d629a3..099b0402f42 100644 --- a/pkg/registry/core/replicationcontroller/declarative_validation_test.go +++ b/pkg/registry/core/replicationcontroller/declarative_validation_test.go @@ -68,6 +68,22 @@ func TestDeclarativeValidateForDeclarative(t *testing.T) { field.Invalid(field.NewPath("spec.replicas"), nil, "").WithOrigin("minimum"), }, }, + // spec.minReadySeconds + "0 minReadySeconds": { + input: mkValidReplicationController(setSpecMinReadySeconds(0)), + }, + "1 minReadySeconds": { + input: mkValidReplicationController(setSpecMinReadySeconds(1)), + }, + "positive minReadySeconds": { + input: mkValidReplicationController(setSpecMinReadySeconds(100)), + }, + "negative minReadySeconds": { + input: mkValidReplicationController(setSpecMinReadySeconds(-1)), + expectedErrs: field.ErrorList{ + field.Invalid(field.NewPath("spec.minReadySeconds"), nil, "").WithOrigin("minimum"), + }, + }, } for k, tc := range testCases { t.Run(k, func(t *testing.T) { @@ -148,6 +164,26 @@ func TestValidateUpdateForDeclarative(t *testing.T) { field.Invalid(field.NewPath("spec.replicas"), nil, "").WithOrigin("minimum"), }, }, + // spec.minReadySeconds + "0 minReadySeconds": { + old: mkValidReplicationController(), + update: mkValidReplicationController(setSpecMinReadySeconds(0)), + }, + "1 minReadySeconds": { + old: mkValidReplicationController(), + update: mkValidReplicationController(setSpecMinReadySeconds(1)), + }, + "positive minReadySeconds": { + old: mkValidReplicationController(), + update: mkValidReplicationController(setSpecMinReadySeconds(3)), + }, + "negative minReadySeconds": { + old: mkValidReplicationController(), + update: mkValidReplicationController(setSpecMinReadySeconds(-1)), + expectedErrs: field.ErrorList{ + field.Invalid(field.NewPath("spec.minReadySeconds"), nil, "").WithOrigin("minimum"), + }, + }, } for k, tc := range testCases { t.Run(k, func(t *testing.T) { @@ -227,3 +263,9 @@ func setSpecReplicas(val int32) func(rc *api.ReplicationController) { rc.Spec.Replicas = ptr.To(val) } } + +func setSpecMinReadySeconds(val int32) func(rc *api.ReplicationController) { + return func(rc *api.ReplicationController) { + rc.Spec.MinReadySeconds = val + } +}