github.com/verrazzano/verrazzano@v1.7.1/pkg/kubectlutil/kubectlutil_test.go (about) 1 // Copyright (c) 2023, Oracle and/or its affiliates. 2 // Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl. 3 4 package kubectlutil_test 5 6 import ( 7 "github.com/google/go-cmp/cmp" 8 "github.com/verrazzano/verrazzano/pkg/kubectlutil" 9 "github.com/verrazzano/verrazzano/platform-operator/apis/verrazzano/v1beta1" 10 v1 "k8s.io/api/core/v1" 11 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" 12 "testing" 13 ) 14 15 func TestSetLastAppliedConfigurationAnnotation(t *testing.T) { 16 vz := &v1beta1.Verrazzano{ 17 ObjectMeta: metav1.ObjectMeta{}, 18 Spec: v1beta1.VerrazzanoSpec{}, 19 } 20 21 err := kubectlutil.SetLastAppliedConfigurationAnnotation(vz) 22 if err != nil { 23 t.Errorf("expected no error, got error %v", err) 24 } 25 26 value, ok := vz.Annotations[v1.LastAppliedConfigAnnotation] 27 if !ok { 28 t.Errorf("expected "+v1.LastAppliedConfigAnnotation+" , not found on object %v", vz) 29 } 30 expected := "{\"metadata\":{\"creationTimestamp\":null},\"spec\":{\"components\":{},\"security\":{}},\"status\":{}}\n" 31 if diff := cmp.Diff(expected, value); diff != "" { 32 t.Errorf("expected %v, got %v instead", expected, value) 33 t.Logf("Difference: %s", diff) 34 } 35 }