diff --git a/pkg/scheduler/apis/config/validation/validation_pluginargs.go b/pkg/scheduler/apis/config/validation/validation_pluginargs.go index ce3ea2bd55a..56304b3e8f1 100644 --- a/pkg/scheduler/apis/config/validation/validation_pluginargs.go +++ b/pkg/scheduler/apis/config/validation/validation_pluginargs.go @@ -306,7 +306,7 @@ func ValidateNodeResourcesFitArgs(path *field.Path, args *config.NodeResourcesFi if args.ScoringStrategy != nil { allErrs = append(allErrs, validateResources(args.ScoringStrategy.Resources, path.Child("resources"))...) - if args.ScoringStrategy.RequestedToCapacityRatio != nil && len(args.ScoringStrategy.RequestedToCapacityRatio.Shape) > 0 { + if args.ScoringStrategy.RequestedToCapacityRatio != nil { allErrs = append(allErrs, validateFunctionShape(args.ScoringStrategy.RequestedToCapacityRatio.Shape, path.Child("shape"))...) } } diff --git a/pkg/scheduler/apis/config/validation/validation_pluginargs_test.go b/pkg/scheduler/apis/config/validation/validation_pluginargs_test.go index 595f3b11845..33a41ec7b6f 100644 --- a/pkg/scheduler/apis/config/validation/validation_pluginargs_test.go +++ b/pkg/scheduler/apis/config/validation/validation_pluginargs_test.go @@ -947,6 +947,12 @@ func TestValidateMostAllocatedScoringStrategy(t *testing.T) { } func TestValidateRequestedToCapacityRatioScoringStrategy(t *testing.T) { + defaultShape := []config.UtilizationShapePoint{ + { + Utilization: 30, + Score: 3, + }, + } tests := []struct { name string resources []config.ResourceSpec @@ -954,7 +960,18 @@ func TestValidateRequestedToCapacityRatioScoringStrategy(t *testing.T) { wantErrs field.ErrorList }{ { - name: "weight greater than max", + name: "no shapes", + shapes: nil, + wantErrs: field.ErrorList{ + { + Type: field.ErrorTypeRequired, + Field: "shape", + }, + }, + }, + { + name: "weight greater than max", + shapes: defaultShape, resources: []config.ResourceSpec{ { Name: "cpu", @@ -969,7 +986,8 @@ func TestValidateRequestedToCapacityRatioScoringStrategy(t *testing.T) { }, }, { - name: "weight less than min", + name: "weight less than min", + shapes: defaultShape, resources: []config.ResourceSpec{ { Name: "cpu", @@ -984,13 +1002,8 @@ func TestValidateRequestedToCapacityRatioScoringStrategy(t *testing.T) { }, }, { - name: "valid shapes", - shapes: []config.UtilizationShapePoint{ - { - Utilization: 30, - Score: 3, - }, - }, + name: "valid shapes", + shapes: defaultShape, wantErrs: nil, }, {