Skip to content

Commit fb89505

Browse files
committed
Add test
1 parent a7057f8 commit fb89505

File tree

11 files changed

+81
-5
lines changed

11 files changed

+81
-5
lines changed

pkg/scheduler/framework/plugins/interpodaffinity/filtering.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -388,7 +388,7 @@ func (pl *InterPodAffinity) RemovePod(ctx context.Context, cycleState *framework
388388
func getPreFilterState(cycleState *framework.CycleState) (*preFilterState, error) {
389389
c, err := cycleState.Read(preFilterStateKey)
390390
if err != nil {
391-
// The preFilterState wasn't pre-computed in prefilter.
391+
// preFilterState doesn't exist, likely PreFilter wasn't invoked.
392392
return nil, fmt.Errorf("error reading %q from cycleState: %v", preFilterStateKey, err)
393393
}
394394

pkg/scheduler/framework/plugins/interpodaffinity/filtering_test.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1634,6 +1634,20 @@ func TestRequiredAffinityMultipleNodes(t *testing.T) {
16341634
}
16351635
}
16361636

1637+
func TestPreFilterDisabled(t *testing.T) {
1638+
pod := &v1.Pod{}
1639+
nodeInfo := nodeinfo.NewNodeInfo()
1640+
node := v1.Node{}
1641+
nodeInfo.SetNode(&node)
1642+
p := &InterPodAffinity{}
1643+
cycleState := framework.NewCycleState()
1644+
gotStatus := p.Filter(context.Background(), cycleState, pod, nodeInfo)
1645+
wantStatus := framework.NewStatus(framework.Error, `error reading "PreFilterInterPodAffinity" from cycleState: not found`)
1646+
if !reflect.DeepEqual(gotStatus, wantStatus) {
1647+
t.Errorf("status does not match: %v, want: %v", gotStatus, wantStatus)
1648+
}
1649+
}
1650+
16371651
func TestPreFilterStateAddRemovePod(t *testing.T) {
16381652
var label1 = map[string]string{
16391653
"region": "r1",

pkg/scheduler/framework/plugins/nodeports/node_ports.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ func (pl *NodePorts) PreFilterExtensions() framework.PreFilterExtensions {
8686
func getPreFilterState(cycleState *framework.CycleState) (preFilterState, error) {
8787
c, err := cycleState.Read(preFilterStateKey)
8888
if err != nil {
89-
// preFilterState state doesn't exist.
89+
// preFilterState doesn't exist, likely PreFilter wasn't invoked.
9090
return nil, fmt.Errorf("error reading %q from cycleState: %v", preFilterStateKey, err)
9191
}
9292

pkg/scheduler/framework/plugins/nodeports/node_ports_test.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,20 @@ func TestNodePorts(t *testing.T) {
163163
}
164164
}
165165

166+
func TestPreFilterDisabled(t *testing.T) {
167+
pod := &v1.Pod{}
168+
nodeInfo := schedulernodeinfo.NewNodeInfo()
169+
node := v1.Node{}
170+
nodeInfo.SetNode(&node)
171+
p, _ := New(nil, nil)
172+
cycleState := framework.NewCycleState()
173+
gotStatus := p.(framework.FilterPlugin).Filter(context.Background(), cycleState, pod, nodeInfo)
174+
wantStatus := framework.NewStatus(framework.Error, `error reading "PreFilterNodePorts" from cycleState: not found`)
175+
if !reflect.DeepEqual(gotStatus, wantStatus) {
176+
t.Errorf("status does not match: %v, want: %v", gotStatus, wantStatus)
177+
}
178+
}
179+
166180
func TestGetContainerPorts(t *testing.T) {
167181
tests := []struct {
168182
pod1 *v1.Pod

pkg/scheduler/framework/plugins/noderesources/fit.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ func (f *Fit) PreFilterExtensions() framework.PreFilterExtensions {
129129
func getPreFilterState(cycleState *framework.CycleState) (*preFilterState, error) {
130130
c, err := cycleState.Read(preFilterStateKey)
131131
if err != nil {
132-
// The preFilterState doesn't exist.
132+
// preFilterState doesn't exist, likely PreFilter wasn't invoked.
133133
return nil, fmt.Errorf("error reading %q from cycleState: %v", preFilterStateKey, err)
134134
}
135135

pkg/scheduler/framework/plugins/noderesources/fit_test.go

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -398,6 +398,20 @@ func TestEnoughRequests(t *testing.T) {
398398
}
399399
}
400400

401+
func TestPreFilterDisabled(t *testing.T) {
402+
pod := &v1.Pod{}
403+
nodeInfo := schedulernodeinfo.NewNodeInfo()
404+
node := v1.Node{}
405+
nodeInfo.SetNode(&node)
406+
p, _ := NewFit(nil, nil)
407+
cycleState := framework.NewCycleState()
408+
gotStatus := p.(framework.FilterPlugin).Filter(context.Background(), cycleState, pod, nodeInfo)
409+
wantStatus := framework.NewStatus(framework.Error, `error reading "PreFilterNodeResourcesFit" from cycleState: not found`)
410+
if !reflect.DeepEqual(gotStatus, wantStatus) {
411+
t.Errorf("status does not match: %v, want: %v", gotStatus, wantStatus)
412+
}
413+
}
414+
401415
func TestNotEnoughRequests(t *testing.T) {
402416
defer featuregatetesting.SetFeatureGateDuringTest(t, utilfeature.DefaultFeatureGate, features.PodOverhead, true)()
403417
notEnoughPodsTests := []struct {

pkg/scheduler/framework/plugins/podtopologyspread/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ go_test(
3535
deps = [
3636
"//pkg/scheduler/framework/v1alpha1:go_default_library",
3737
"//pkg/scheduler/internal/cache:go_default_library",
38+
"//pkg/scheduler/nodeinfo:go_default_library",
3839
"//pkg/scheduler/testing:go_default_library",
3940
"//staging/src/k8s.io/api/core/v1:go_default_library",
4041
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",

pkg/scheduler/framework/plugins/podtopologyspread/filtering.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ func (pl *PodTopologySpread) RemovePod(ctx context.Context, cycleState *framewor
194194
func getPreFilterState(cycleState *framework.CycleState) (*preFilterState, error) {
195195
c, err := cycleState.Read(preFilterStateKey)
196196
if err != nil {
197-
// The preFilterState wasn't pre-computed in prefilter.
197+
// preFilterState doesn't exist, likely PreFilter wasn't invoked.
198198
return nil, fmt.Errorf("error reading %q from cycleState: %v", preFilterStateKey, err)
199199
}
200200

pkg/scheduler/framework/plugins/podtopologyspread/filtering_test.go

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ import (
2626
"k8s.io/apimachinery/pkg/labels"
2727
framework "k8s.io/kubernetes/pkg/scheduler/framework/v1alpha1"
2828
"k8s.io/kubernetes/pkg/scheduler/internal/cache"
29+
schedulernodeinfo "k8s.io/kubernetes/pkg/scheduler/nodeinfo"
2930
st "k8s.io/kubernetes/pkg/scheduler/testing"
3031
)
3132

@@ -1464,3 +1465,17 @@ func TestMultipleConstraints(t *testing.T) {
14641465
})
14651466
}
14661467
}
1468+
1469+
func TestPreFilterDisabled(t *testing.T) {
1470+
pod := &v1.Pod{}
1471+
nodeInfo := schedulernodeinfo.NewNodeInfo()
1472+
node := v1.Node{}
1473+
nodeInfo.SetNode(&node)
1474+
p := &PodTopologySpread{}
1475+
cycleState := framework.NewCycleState()
1476+
gotStatus := p.Filter(context.Background(), cycleState, pod, nodeInfo)
1477+
wantStatus := framework.NewStatus(framework.Error, `error reading "PreFilterPodTopologySpread" from cycleState: not found`)
1478+
if !reflect.DeepEqual(gotStatus, wantStatus) {
1479+
t.Errorf("status does not match: %v, want: %v", gotStatus, wantStatus)
1480+
}
1481+
}

pkg/scheduler/framework/plugins/serviceaffinity/service_affinity.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ func (pl *ServiceAffinity) RemovePod(ctx context.Context, cycleState *framework.
190190
func getPreFilterState(cycleState *framework.CycleState) (*preFilterState, error) {
191191
c, err := cycleState.Read(preFilterStateKey)
192192
if err != nil {
193-
// The metadata wasn't pre-computed in prefilter.
193+
// preFilterState doesn't exist, likely PreFilter wasn't invoked.
194194
return nil, fmt.Errorf("error reading %q from cycleState: %v", preFilterStateKey, err)
195195
}
196196

0 commit comments

Comments
 (0)