mirror of
https://github.com/kubernetes-sigs/descheduler.git
synced 2026-01-28 14:41:10 +01:00
refactor(TestRemovePodsViolatingNodeAffinity): apply unit test convention for podWithNodeAffinity
This commit is contained in:
@@ -55,58 +55,60 @@ func TestRemovePodsViolatingNodeAffinity(t *testing.T) {
|
|||||||
})
|
})
|
||||||
|
|
||||||
addPodsToNode := func(node *v1.Node, deletionTimestamp *metav1.Time, affinityType string) []*v1.Pod {
|
addPodsToNode := func(node *v1.Node, deletionTimestamp *metav1.Time, affinityType string) []*v1.Pod {
|
||||||
podWithNodeAffinity := buildTestPod("podWithNodeAffinity", node.Name, nil)
|
podWithNodeAffinity := buildTestPod("podWithNodeAffinity", node.Name, func(pod *v1.Pod) {
|
||||||
podWithNodeAffinity.Spec.Affinity = &v1.Affinity{
|
pod.Spec.Affinity = &v1.Affinity{
|
||||||
NodeAffinity: &v1.NodeAffinity{},
|
NodeAffinity: &v1.NodeAffinity{},
|
||||||
}
|
}
|
||||||
|
|
||||||
switch affinityType {
|
switch affinityType {
|
||||||
case "requiredDuringSchedulingIgnoredDuringExecution":
|
case "requiredDuringSchedulingIgnoredDuringExecution":
|
||||||
podWithNodeAffinity.Spec.Affinity.NodeAffinity.RequiredDuringSchedulingIgnoredDuringExecution = &v1.NodeSelector{
|
pod.Spec.Affinity.NodeAffinity.RequiredDuringSchedulingIgnoredDuringExecution = &v1.NodeSelector{
|
||||||
NodeSelectorTerms: []v1.NodeSelectorTerm{
|
NodeSelectorTerms: []v1.NodeSelectorTerm{
|
||||||
|
{
|
||||||
|
MatchExpressions: []v1.NodeSelectorRequirement{
|
||||||
|
{
|
||||||
|
Key: nodeLabelKey,
|
||||||
|
Operator: "In",
|
||||||
|
Values: []string{
|
||||||
|
nodeLabelValue,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
case "preferredDuringSchedulingIgnoredDuringExecution":
|
||||||
|
pod.Spec.Affinity.NodeAffinity.PreferredDuringSchedulingIgnoredDuringExecution = []v1.PreferredSchedulingTerm{
|
||||||
{
|
{
|
||||||
MatchExpressions: []v1.NodeSelectorRequirement{
|
Weight: 10,
|
||||||
{
|
Preference: v1.NodeSelectorTerm{
|
||||||
Key: nodeLabelKey,
|
MatchExpressions: []v1.NodeSelectorRequirement{
|
||||||
Operator: "In",
|
{
|
||||||
Values: []string{
|
Key: nodeLabelKey,
|
||||||
nodeLabelValue,
|
Operator: "In",
|
||||||
|
Values: []string{
|
||||||
|
nodeLabelValue,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
}
|
||||||
|
case "requiredDuringSchedulingRequiredDuringExecution":
|
||||||
|
default:
|
||||||
|
t.Fatalf("Invalid affinity type %s", affinityType)
|
||||||
}
|
}
|
||||||
case "preferredDuringSchedulingIgnoredDuringExecution":
|
|
||||||
podWithNodeAffinity.Spec.Affinity.NodeAffinity.PreferredDuringSchedulingIgnoredDuringExecution = []v1.PreferredSchedulingTerm{
|
pod.ObjectMeta.OwnerReferences = test.GetNormalPodOwnerRefList()
|
||||||
{
|
pod.DeletionTimestamp = deletionTimestamp
|
||||||
Weight: 10,
|
})
|
||||||
Preference: v1.NodeSelectorTerm{
|
|
||||||
MatchExpressions: []v1.NodeSelectorRequirement{
|
|
||||||
{
|
|
||||||
Key: nodeLabelKey,
|
|
||||||
Operator: "In",
|
|
||||||
Values: []string{
|
|
||||||
nodeLabelValue,
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
case "requiredDuringSchedulingRequiredDuringExecution":
|
|
||||||
default:
|
|
||||||
t.Fatalf("Invalid affinity type %s", affinityType)
|
|
||||||
}
|
|
||||||
|
|
||||||
pod1 := buildTestPod("pod1", node.Name, nil)
|
pod1 := buildTestPod("pod1", node.Name, nil)
|
||||||
pod2 := buildTestPod("pod2", node.Name, nil)
|
pod2 := buildTestPod("pod2", node.Name, nil)
|
||||||
|
|
||||||
podWithNodeAffinity.ObjectMeta.OwnerReferences = test.GetNormalPodOwnerRefList()
|
|
||||||
pod1.ObjectMeta.OwnerReferences = test.GetNormalPodOwnerRefList()
|
pod1.ObjectMeta.OwnerReferences = test.GetNormalPodOwnerRefList()
|
||||||
pod2.ObjectMeta.OwnerReferences = test.GetNormalPodOwnerRefList()
|
pod2.ObjectMeta.OwnerReferences = test.GetNormalPodOwnerRefList()
|
||||||
|
|
||||||
podWithNodeAffinity.DeletionTimestamp = deletionTimestamp
|
|
||||||
pod1.DeletionTimestamp = deletionTimestamp
|
pod1.DeletionTimestamp = deletionTimestamp
|
||||||
pod2.DeletionTimestamp = deletionTimestamp
|
pod2.DeletionTimestamp = deletionTimestamp
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user