From ce93309f4c96802f73c1c112e79f3f64b170f037 Mon Sep 17 00:00:00 2001 From: yongruilin Date: Mon, 20 Oct 2025 23:33:24 +0000 Subject: [PATCH] test(validation): Add tests for bindingFailureConditions maxItems validation --- .../declarative_validation_test.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pkg/registry/resource/resourceclaim/declarative_validation_test.go b/pkg/registry/resource/resourceclaim/declarative_validation_test.go index cc76f72aede..2b8cefbfc6e 100644 --- a/pkg/registry/resource/resourceclaim/declarative_validation_test.go +++ b/pkg/registry/resource/resourceclaim/declarative_validation_test.go @@ -1022,6 +1022,23 @@ func testValidateStatusUpdateForDeclarative(t *testing.T, apiVersion string) { field.TooMany(field.NewPath("status", "allocation", "devices", "results").Index(0).Child("bindingConditions"), resource.BindingConditionsMaxSize+1, resource.BindingConditionsMaxSize).WithOrigin("maxItems"), }, }, + "valid binding failure conditions, max items": { + old: mkValidResourceClaim(), + update: mkResourceClaimWithStatus( + tweakStatusBindingConditions(1), + tweakStatusBindingFailureConditions(resource.BindingFailureConditionsMaxSize), + ), + }, + "invalid binding failure conditions, too many": { + old: mkValidResourceClaim(), + update: mkResourceClaimWithStatus( + tweakStatusBindingConditions(1), + tweakStatusBindingFailureConditions(resource.BindingFailureConditionsMaxSize+1), + ), + expectedErrs: field.ErrorList{ + field.TooMany(field.NewPath("status", "allocation", "devices", "results").Index(0).Child("bindingFailureConditions"), resource.BindingFailureConditionsMaxSize+1, resource.BindingFailureConditionsMaxSize).WithOrigin("maxItems"), + }, + }, } for k, tc := range testCases {