mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 20:24:09 +00:00
Merge pull request #94482 from oomichi/expect_no_error-2
Use ExpectNoError(err) for some e2e tests
This commit is contained in:
commit
3e8e0dbf4a
@ -35,6 +35,10 @@ do
|
|||||||
then
|
then
|
||||||
errors_expect_no_error+=( "${file}" )
|
errors_expect_no_error+=( "${file}" )
|
||||||
fi
|
fi
|
||||||
|
if grep -E "Expect\(err\)\.To\(gomega\.BeNil\(\)\)" "${file}" > /dev/null
|
||||||
|
then
|
||||||
|
errors_expect_no_error+=( "${file}" )
|
||||||
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
errors_expect_error=()
|
errors_expect_error=()
|
||||||
|
@ -415,7 +415,7 @@ func testCustomResourceConversionWebhook(f *framework.Framework, crd *apiextensi
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
_, err := customResourceClients["v1"].Create(context.TODO(), crInstance, metav1.CreateOptions{})
|
_, err := customResourceClients["v1"].Create(context.TODO(), crInstance, metav1.CreateOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
ginkgo.By("v2 custom resource should be converted")
|
ginkgo.By("v2 custom resource should be converted")
|
||||||
v2crd, err := customResourceClients["v2"].Get(context.TODO(), name, metav1.GetOptions{})
|
v2crd, err := customResourceClients["v2"].Get(context.TODO(), name, metav1.GetOptions{})
|
||||||
framework.ExpectNoError(err, "Getting v2 of custom resource %s", name)
|
framework.ExpectNoError(err, "Getting v2 of custom resource %s", name)
|
||||||
@ -440,13 +440,13 @@ func testCRListConversion(f *framework.Framework, testCrd *crd.TestCrd) {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
_, err := customResourceClients["v1"].Create(context.TODO(), crInstance, metav1.CreateOptions{})
|
_, err := customResourceClients["v1"].Create(context.TODO(), crInstance, metav1.CreateOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
// Now cr-instance-1 is stored as v1. lets change storage version
|
// Now cr-instance-1 is stored as v1. lets change storage version
|
||||||
crd, err = integration.UpdateV1CustomResourceDefinitionWithRetry(testCrd.APIExtensionClient, crd.Name, func(c *apiextensionsv1.CustomResourceDefinition) {
|
crd, err = integration.UpdateV1CustomResourceDefinitionWithRetry(testCrd.APIExtensionClient, crd.Name, func(c *apiextensionsv1.CustomResourceDefinition) {
|
||||||
c.Spec.Versions = alternativeAPIVersions
|
c.Spec.Versions = alternativeAPIVersions
|
||||||
})
|
})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
ginkgo.By("Create a v2 custom resource")
|
ginkgo.By("Create a v2 custom resource")
|
||||||
crInstance = &unstructured.Unstructured{
|
crInstance = &unstructured.Unstructured{
|
||||||
Object: map[string]interface{}{
|
Object: map[string]interface{}{
|
||||||
@ -471,13 +471,13 @@ func testCRListConversion(f *framework.Framework, testCrd *crd.TestCrd) {
|
|||||||
break
|
break
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
// Now that we have a v1 and v2 object, both list operation in v1 and v2 should work as expected.
|
// Now that we have a v1 and v2 object, both list operation in v1 and v2 should work as expected.
|
||||||
|
|
||||||
ginkgo.By("List CRs in v1")
|
ginkgo.By("List CRs in v1")
|
||||||
list, err := customResourceClients["v1"].List(context.TODO(), metav1.ListOptions{})
|
list, err := customResourceClients["v1"].List(context.TODO(), metav1.ListOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
gomega.Expect(len(list.Items)).To(gomega.BeIdenticalTo(2))
|
gomega.Expect(len(list.Items)).To(gomega.BeIdenticalTo(2))
|
||||||
framework.ExpectEqual((list.Items[0].GetName() == name1 && list.Items[1].GetName() == name2) ||
|
framework.ExpectEqual((list.Items[0].GetName() == name1 && list.Items[1].GetName() == name2) ||
|
||||||
(list.Items[0].GetName() == name2 && list.Items[1].GetName() == name1), true)
|
(list.Items[0].GetName() == name2 && list.Items[1].GetName() == name1), true)
|
||||||
@ -486,7 +486,7 @@ func testCRListConversion(f *framework.Framework, testCrd *crd.TestCrd) {
|
|||||||
|
|
||||||
ginkgo.By("List CRs in v2")
|
ginkgo.By("List CRs in v2")
|
||||||
list, err = customResourceClients["v2"].List(context.TODO(), metav1.ListOptions{})
|
list, err = customResourceClients["v2"].List(context.TODO(), metav1.ListOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
gomega.Expect(len(list.Items)).To(gomega.BeIdenticalTo(2))
|
gomega.Expect(len(list.Items)).To(gomega.BeIdenticalTo(2))
|
||||||
framework.ExpectEqual((list.Items[0].GetName() == name1 && list.Items[1].GetName() == name2) ||
|
framework.ExpectEqual((list.Items[0].GetName() == name1 && list.Items[1].GetName() == name2) ||
|
||||||
(list.Items[0].GetName() == name2 && list.Items[1].GetName() == name1), true)
|
(list.Items[0].GetName() == name2 && list.Items[1].GetName() == name1), true)
|
||||||
|
@ -48,7 +48,6 @@ import (
|
|||||||
imageutils "k8s.io/kubernetes/test/utils/image"
|
imageutils "k8s.io/kubernetes/test/utils/image"
|
||||||
|
|
||||||
"github.com/onsi/ginkgo"
|
"github.com/onsi/ginkgo"
|
||||||
"github.com/onsi/gomega"
|
|
||||||
|
|
||||||
// ensure libs have a chance to initialize
|
// ensure libs have a chance to initialize
|
||||||
_ "github.com/stretchr/testify/assert"
|
_ "github.com/stretchr/testify/assert"
|
||||||
@ -1064,7 +1063,7 @@ func testMutatingPodWebhook(f *framework.Framework) {
|
|||||||
client := f.ClientSet
|
client := f.ClientSet
|
||||||
pod := toBeMutatedPod(f)
|
pod := toBeMutatedPod(f)
|
||||||
mutatedPod, err := client.CoreV1().Pods(f.Namespace.Name).Create(context.TODO(), pod, metav1.CreateOptions{})
|
mutatedPod, err := client.CoreV1().Pods(f.Namespace.Name).Create(context.TODO(), pod, metav1.CreateOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
if len(mutatedPod.Spec.InitContainers) != 1 {
|
if len(mutatedPod.Spec.InitContainers) != 1 {
|
||||||
framework.Failf("expect pod to have 1 init container, got %#v", mutatedPod.Spec.InitContainers)
|
framework.Failf("expect pod to have 1 init container, got %#v", mutatedPod.Spec.InitContainers)
|
||||||
}
|
}
|
||||||
@ -2211,9 +2210,9 @@ func testSlowWebhookTimeoutNoError(f *framework.Framework) {
|
|||||||
client := f.ClientSet
|
client := f.ClientSet
|
||||||
name := "e2e-test-slow-webhook-configmap"
|
name := "e2e-test-slow-webhook-configmap"
|
||||||
_, err := client.CoreV1().ConfigMaps(f.Namespace.Name).Create(context.TODO(), &v1.ConfigMap{ObjectMeta: metav1.ObjectMeta{Name: name}}, metav1.CreateOptions{})
|
_, err := client.CoreV1().ConfigMaps(f.Namespace.Name).Create(context.TODO(), &v1.ConfigMap{ObjectMeta: metav1.ObjectMeta{Name: name}}, metav1.CreateOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
err = client.CoreV1().ConfigMaps(f.Namespace.Name).Delete(context.TODO(), name, metav1.DeleteOptions{})
|
err = client.CoreV1().ConfigMaps(f.Namespace.Name).Delete(context.TODO(), name, metav1.DeleteOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
// createAdmissionWebhookMultiVersionTestCRDWithV1Storage creates a new CRD specifically
|
// createAdmissionWebhookMultiVersionTestCRDWithV1Storage creates a new CRD specifically
|
||||||
|
@ -222,7 +222,7 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
|||||||
event, err := watchtools.Until(ctx, startedPod.ResourceVersion, w,
|
event, err := watchtools.Until(ctx, startedPod.ResourceVersion, w,
|
||||||
recordEvents(events, conditions.PodCompleted),
|
recordEvents(events, conditions.PodCompleted),
|
||||||
)
|
)
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
checkInvariants(events, containerInitInvariant)
|
checkInvariants(events, containerInitInvariant)
|
||||||
endPod := event.Object.(*v1.Pod)
|
endPod := event.Object.(*v1.Pod)
|
||||||
@ -299,7 +299,7 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
|||||||
ctx, cancel := watchtools.ContextWithOptionalTimeout(context.Background(), framework.PodStartTimeout)
|
ctx, cancel := watchtools.ContextWithOptionalTimeout(context.Background(), framework.PodStartTimeout)
|
||||||
defer cancel()
|
defer cancel()
|
||||||
event, err := watchtools.Until(ctx, startedPod.ResourceVersion, w, recordEvents(events, conditions.PodRunning))
|
event, err := watchtools.Until(ctx, startedPod.ResourceVersion, w, recordEvents(events, conditions.PodRunning))
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
checkInvariants(events, containerInitInvariant)
|
checkInvariants(events, containerInitInvariant)
|
||||||
endPod := event.Object.(*v1.Pod)
|
endPod := event.Object.(*v1.Pod)
|
||||||
@ -429,7 +429,7 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
checkInvariants(events, containerInitInvariant)
|
checkInvariants(events, containerInitInvariant)
|
||||||
endPod := event.Object.(*v1.Pod)
|
endPod := event.Object.(*v1.Pod)
|
||||||
@ -544,7 +544,7 @@ var _ = framework.KubeDescribe("InitContainer [NodeConformance]", func() {
|
|||||||
}),
|
}),
|
||||||
recordEvents(events, conditions.PodCompleted),
|
recordEvents(events, conditions.PodCompleted),
|
||||||
)
|
)
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
checkInvariants(events, containerInitInvariant)
|
checkInvariants(events, containerInitInvariant)
|
||||||
endPod := event.Object.(*v1.Pod)
|
endPod := event.Object.(*v1.Pod)
|
||||||
|
@ -177,7 +177,7 @@ var _ = framework.KubeDescribe("NodeLease", func() {
|
|||||||
// running as cluster e2e test, because node e2e test does not create and
|
// running as cluster e2e test, because node e2e test does not create and
|
||||||
// run controller manager, i.e., no node lifecycle controller.
|
// run controller manager, i.e., no node lifecycle controller.
|
||||||
node, err := f.ClientSet.CoreV1().Nodes().Get(context.TODO(), nodeName, metav1.GetOptions{})
|
node, err := f.ClientSet.CoreV1().Nodes().Get(context.TODO(), nodeName, metav1.GetOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
_, readyCondition := testutils.GetNodeCondition(&node.Status, v1.NodeReady)
|
_, readyCondition := testutils.GetNodeCondition(&node.Status, v1.NodeReady)
|
||||||
framework.ExpectEqual(readyCondition.Status, v1.ConditionTrue)
|
framework.ExpectEqual(readyCondition.Status, v1.ConditionTrue)
|
||||||
})
|
})
|
||||||
@ -186,7 +186,7 @@ var _ = framework.KubeDescribe("NodeLease", func() {
|
|||||||
|
|
||||||
func getHeartbeatTimeAndStatus(clientSet clientset.Interface, nodeName string) (time.Time, v1.NodeStatus) {
|
func getHeartbeatTimeAndStatus(clientSet clientset.Interface, nodeName string) (time.Time, v1.NodeStatus) {
|
||||||
node, err := clientSet.CoreV1().Nodes().Get(context.TODO(), nodeName, metav1.GetOptions{})
|
node, err := clientSet.CoreV1().Nodes().Get(context.TODO(), nodeName, metav1.GetOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
_, readyCondition := testutils.GetNodeCondition(&node.Status, v1.NodeReady)
|
_, readyCondition := testutils.GetNodeCondition(&node.Status, v1.NodeReady)
|
||||||
framework.ExpectEqual(readyCondition.Status, v1.ConditionTrue)
|
framework.ExpectEqual(readyCondition.Status, v1.ConditionTrue)
|
||||||
heartbeatTime := readyCondition.LastHeartbeatTime.Time
|
heartbeatTime := readyCondition.LastHeartbeatTime.Time
|
||||||
|
@ -590,7 +590,7 @@ var _ = SIGDescribe("Kubectl client", func() {
|
|||||||
gomega.Expect(runOutput).ToNot(gomega.ContainSubstring("stdin closed"))
|
gomega.Expect(runOutput).ToNot(gomega.ContainSubstring("stdin closed"))
|
||||||
g := func(pods []*v1.Pod) sort.Interface { return sort.Reverse(controller.ActivePods(pods)) }
|
g := func(pods []*v1.Pod) sort.Interface { return sort.Reverse(controller.ActivePods(pods)) }
|
||||||
runTestPod, _, err := polymorphichelpers.GetFirstPod(f.ClientSet.CoreV1(), ns, "run=run-test-3", 1*time.Minute, g)
|
runTestPod, _, err := polymorphichelpers.GetFirstPod(f.ClientSet.CoreV1(), ns, "run=run-test-3", 1*time.Minute, g)
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
if !e2epod.CheckPodsRunningReady(c, ns, []string{runTestPod.Name}, time.Minute) {
|
if !e2epod.CheckPodsRunningReady(c, ns, []string{runTestPod.Name}, time.Minute) {
|
||||||
framework.Failf("Pod %q of Job %q should still be running", runTestPod.Name, "run-test-3")
|
framework.Failf("Pod %q of Job %q should still be running", runTestPod.Name, "run-test-3")
|
||||||
}
|
}
|
||||||
@ -605,7 +605,7 @@ var _ = SIGDescribe("Kubectl client", func() {
|
|||||||
gomega.Expect(logOutput).ToNot(gomega.ContainSubstring("stdin closed"))
|
gomega.Expect(logOutput).ToNot(gomega.ContainSubstring("stdin closed"))
|
||||||
return strings.Contains(logOutput, "abcd1234"), nil
|
return strings.Contains(logOutput, "abcd1234"), nil
|
||||||
})
|
})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
gomega.Expect(c.CoreV1().Pods(ns).Delete(context.TODO(), "run-test-3", metav1.DeleteOptions{})).To(gomega.BeNil())
|
gomega.Expect(c.CoreV1().Pods(ns).Delete(context.TODO(), "run-test-3", metav1.DeleteOptions{})).To(gomega.BeNil())
|
||||||
})
|
})
|
||||||
|
@ -113,7 +113,7 @@ func invokeTestForFstype(f *framework.Framework, client clientset.Interface, nam
|
|||||||
// Detach and delete volume
|
// Detach and delete volume
|
||||||
detachVolume(f, client, pod, persistentvolumes[0].Spec.VsphereVolume.VolumePath)
|
detachVolume(f, client, pod, persistentvolumes[0].Spec.VsphereVolume.VolumePath)
|
||||||
err = e2epv.DeletePersistentVolumeClaim(client, pvclaim.Name, namespace)
|
err = e2epv.DeletePersistentVolumeClaim(client, pvclaim.Name, namespace)
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
func invokeTestForInvalidFstype(f *framework.Framework, client clientset.Interface, namespace string, fstype string) {
|
func invokeTestForInvalidFstype(f *framework.Framework, client clientset.Interface, namespace string, fstype string) {
|
||||||
@ -137,7 +137,7 @@ func invokeTestForInvalidFstype(f *framework.Framework, client clientset.Interfa
|
|||||||
// Detach and delete volume
|
// Detach and delete volume
|
||||||
detachVolume(f, client, pod, persistentvolumes[0].Spec.VsphereVolume.VolumePath)
|
detachVolume(f, client, pod, persistentvolumes[0].Spec.VsphereVolume.VolumePath)
|
||||||
err = e2epv.DeletePersistentVolumeClaim(client, pvclaim.Name, namespace)
|
err = e2epv.DeletePersistentVolumeClaim(client, pvclaim.Name, namespace)
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
|
|
||||||
gomega.Expect(eventList.Items).NotTo(gomega.BeEmpty())
|
gomega.Expect(eventList.Items).NotTo(gomega.BeEmpty())
|
||||||
errorMsg := `MountVolume.MountDevice failed for volume "` + persistentvolumes[0].Name + `" : executable file not found`
|
errorMsg := `MountVolume.MountDevice failed for volume "` + persistentvolumes[0].Name + `" : executable file not found`
|
||||||
@ -184,7 +184,7 @@ func createPodAndVerifyVolumeAccessible(client clientset.Interface, namespace st
|
|||||||
// detachVolume delete the volume passed in the argument and wait until volume is detached from the node,
|
// detachVolume delete the volume passed in the argument and wait until volume is detached from the node,
|
||||||
func detachVolume(f *framework.Framework, client clientset.Interface, pod *v1.Pod, volPath string) {
|
func detachVolume(f *framework.Framework, client clientset.Interface, pod *v1.Pod, volPath string) {
|
||||||
pod, err := f.ClientSet.CoreV1().Pods(pod.Namespace).Get(context.TODO(), pod.Name, metav1.GetOptions{})
|
pod, err := f.ClientSet.CoreV1().Pods(pod.Namespace).Get(context.TODO(), pod.Name, metav1.GetOptions{})
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
nodeName := pod.Spec.NodeName
|
nodeName := pod.Spec.NodeName
|
||||||
ginkgo.By("Deleting pod")
|
ginkgo.By("Deleting pod")
|
||||||
e2epod.DeletePodWithWait(client, pod)
|
e2epod.DeletePodWithWait(client, pod)
|
||||||
|
@ -327,7 +327,7 @@ var _ = SIGDescribe("HugePages [Serial] [Feature:HugePages][NodeSpecialFeature:H
|
|||||||
ginkgo.By("checking if the expected hugetlb settings were applied")
|
ginkgo.By("checking if the expected hugetlb settings were applied")
|
||||||
f.PodClient().Create(verifyPod)
|
f.PodClient().Create(verifyPod)
|
||||||
err := e2epod.WaitForPodSuccessInNamespace(f.ClientSet, verifyPod.Name, f.Namespace.Name)
|
err := e2epod.WaitForPodSuccessInNamespace(f.ClientSet, verifyPod.Name, f.Namespace.Name)
|
||||||
gomega.Expect(err).To(gomega.BeNil())
|
framework.ExpectNoError(err)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user