Skip to content

Commit 333f49f

Browse files
committed
apiextensions: fix test loop for CRD validation
1 parent e239831 commit 333f49f

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

staging/src/k8s.io/apiextensions-apiserver/test/integration/validation_test.go

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
"testing"
2222
"time"
2323

24+
apierrors "k8s.io/apimachinery/pkg/api/errors"
2425
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2526
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
2627
"k8s.io/apimachinery/pkg/util/wait"
@@ -379,15 +380,18 @@ func TestCRValidationOnCRDUpdate(t *testing.T) {
379380

380381
// update the CRD to a less stricter schema
381382
gottenCRD.Spec.Validation.OpenAPIV3Schema.Required = []string{"alpha", "beta"}
382-
383-
updatedCRD, err := apiExtensionClient.ApiextensionsV1beta1().CustomResourceDefinitions().Update(gottenCRD)
384-
if err != nil {
383+
if _, err = apiExtensionClient.ApiextensionsV1beta1().CustomResourceDefinitions().Update(gottenCRD); err != nil {
385384
t.Fatal(err)
386385
}
387386

388387
// CR is now accepted
389388
err = wait.Poll(500*time.Millisecond, wait.ForeverTestTimeout, func() (bool, error) {
390-
_, err = instantiateCustomResource(t, newNoxuValidationInstance(ns, "foo"), noxuResourceClient, updatedCRD)
389+
_, err := noxuResourceClient.Create(newNoxuValidationInstance(ns, "foo"))
390+
if statusError, isStatus := err.(*apierrors.StatusError); isStatus {
391+
if strings.Contains(statusError.Error(), "is invalid") {
392+
return false, nil
393+
}
394+
}
391395
if err != nil {
392396
return false, err
393397
}

0 commit comments

Comments
 (0)