@@ -700,6 +700,42 @@ var _ = Describe("Controllerutil", func() {
700
700
})
701
701
})
702
702
703
+ Describe ("AddFinalizer" , func () {
704
+ deploy = & appsv1.Deployment {
705
+ ObjectMeta : metav1.ObjectMeta {
706
+ Finalizers : []string {},
707
+ },
708
+ }
709
+
710
+ It ("should add the finalizer when not present" , func () {
711
+ Expect (controllerutil .AddFinalizer (deploy , testFinalizer )).To (BeTrue ())
712
+ Expect (deploy .ObjectMeta .GetFinalizers ()).To (Equal ([]string {testFinalizer }))
713
+ })
714
+
715
+ It ("should not add the finalizer when already present" , func () {
716
+ Expect (controllerutil .AddFinalizer (deploy , testFinalizer )).To (BeFalse ())
717
+ Expect (deploy .ObjectMeta .GetFinalizers ()).To (Equal ([]string {testFinalizer }))
718
+ })
719
+ })
720
+
721
+ Describe ("RemoveFinalizer" , func () {
722
+ It ("should not remove a finalizer not present" , func () {
723
+ Expect (controllerutil .RemoveFinalizer (deploy , testFinalizer1 )).To (BeFalse ())
724
+ Expect (deploy .ObjectMeta .GetFinalizers ()).To (Equal ([]string {testFinalizer }))
725
+ })
726
+
727
+ It ("should remove finalizer if present" , func () {
728
+ Expect (controllerutil .RemoveFinalizer (deploy , testFinalizer )).To (BeTrue ())
729
+ Expect (deploy .ObjectMeta .GetFinalizers ()).To (Equal ([]string {}))
730
+ })
731
+
732
+ It ("should remove all equal finalizers if present" , func () {
733
+ deploy .SetFinalizers (append (deploy .Finalizers , testFinalizer , testFinalizer ))
734
+ Expect (controllerutil .RemoveFinalizer (deploy , testFinalizer )).To (BeTrue ())
735
+ Expect (deploy .ObjectMeta .GetFinalizers ()).To (Equal ([]string {}))
736
+ })
737
+ })
738
+
703
739
Describe ("ContainsFinalizer" , func () {
704
740
It ("should check that finalizer is present" , func () {
705
741
controllerutil .AddFinalizer (deploy , testFinalizer )
@@ -715,6 +751,7 @@ var _ = Describe("Controllerutil", func() {
715
751
})
716
752
717
753
const testFinalizer = "foo.bar.baz"
754
+ const testFinalizer1 = testFinalizer + "1"
718
755
719
756
var _ runtime.Object = & errRuntimeObj {}
720
757
var _ metav1.Object = & errMetaObj {}
0 commit comments