@@ -25,6 +25,7 @@ import (
2525 corev1 "k8s.io/api/core/v1"
2626 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2727 "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
28+ "k8s.io/apimachinery/pkg/runtime"
2829 "k8s.io/apimachinery/pkg/runtime/schema"
2930 "sigs.k8s.io/controller-runtime/pkg/client"
3031 "sigs.k8s.io/controller-runtime/pkg/client/fake"
@@ -105,14 +106,15 @@ func TestWithStrictFieldValidation(t *testing.T) {
105106 _ = wrappedClient .Create (ctx , dummyObj )
106107 _ = wrappedClient .Update (ctx , dummyObj )
107108 _ = wrappedClient .Patch (ctx , dummyObj , nil )
109+ _ = wrappedClient .Apply (ctx , nil )
108110 _ = wrappedClient .Status ().Create (ctx , dummyObj , dummyObj )
109111 _ = wrappedClient .Status ().Update (ctx , dummyObj )
110112 _ = wrappedClient .Status ().Patch (ctx , dummyObj , nil )
111113 _ = wrappedClient .SubResource ("some-subresource" ).Create (ctx , dummyObj , dummyObj )
112114 _ = wrappedClient .SubResource ("some-subresource" ).Update (ctx , dummyObj )
113115 _ = wrappedClient .SubResource ("some-subresource" ).Patch (ctx , dummyObj , nil )
114116
115- if expectedCalls := 9 ; calls != expectedCalls {
117+ if expectedCalls := 10 ; calls != expectedCalls {
116118 t .Fatalf ("wrong number of calls to assertions: expected=%d; got=%d" , expectedCalls , calls )
117119 }
118120}
@@ -129,14 +131,15 @@ func TestWithStrictFieldValidationOverridden(t *testing.T) {
129131 _ = wrappedClient .Create (ctx , dummyObj , client .FieldValidation (metav1 .FieldValidationWarn ))
130132 _ = wrappedClient .Update (ctx , dummyObj , client .FieldValidation (metav1 .FieldValidationWarn ))
131133 _ = wrappedClient .Patch (ctx , dummyObj , nil , client .FieldValidation (metav1 .FieldValidationWarn ))
134+ _ = wrappedClient .Apply (ctx , nil , client .FieldValidation (metav1 .FieldValidationWarn ))
132135 _ = wrappedClient .Status ().Create (ctx , dummyObj , dummyObj , client .FieldValidation (metav1 .FieldValidationWarn ))
133136 _ = wrappedClient .Status ().Update (ctx , dummyObj , client .FieldValidation (metav1 .FieldValidationWarn ))
134137 _ = wrappedClient .Status ().Patch (ctx , dummyObj , nil , client .FieldValidation (metav1 .FieldValidationWarn ))
135138 _ = wrappedClient .SubResource ("some-subresource" ).Create (ctx , dummyObj , dummyObj , client .FieldValidation (metav1 .FieldValidationWarn ))
136139 _ = wrappedClient .SubResource ("some-subresource" ).Update (ctx , dummyObj , client .FieldValidation (metav1 .FieldValidationWarn ))
137140 _ = wrappedClient .SubResource ("some-subresource" ).Patch (ctx , dummyObj , nil , client .FieldValidation (metav1 .FieldValidationWarn ))
138141
139- if expectedCalls := 9 ; calls != expectedCalls {
142+ if expectedCalls := 10 ; calls != expectedCalls {
140143 t .Fatalf ("wrong number of calls to assertions: expected=%d; got=%d" , expectedCalls , calls )
141144 }
142145}
@@ -272,5 +275,26 @@ func testFieldValidationClient(t *testing.T, expectedFieldValidation string, cal
272275 }
273276 return nil
274277 },
278+ Apply : func (ctx context.Context , c client.WithWatch , obj runtime.ApplyConfiguration , opts ... client.ApplyOption ) error {
279+ callback ()
280+ out := & client.ApplyOptions {}
281+ for _ , f := range opts {
282+ f .ApplyToApply (out )
283+ }
284+ if got := out .FieldValidation ; expectedFieldValidation != got {
285+ t .Fatalf ("wrong field validation: expected=%q; got=%q" , expectedFieldValidation , got )
286+ }
287+
288+ if got := out .AsPatchOptions ().FieldValidation ; expectedFieldValidation != got {
289+ t .Fatalf ("wrong field validation: expected=%q; got=%q" , expectedFieldValidation , got )
290+ }
291+
292+ co := & client.ApplyOptions {}
293+ out .ApplyToApply (co )
294+ if got := co .FieldValidation ; expectedFieldValidation != got {
295+ t .Fatalf ("wrong field validation: expected=%q; got=%q" , expectedFieldValidation , got )
296+ }
297+ return nil
298+ },
275299 }).Build ()
276300}
0 commit comments