@@ -600,6 +600,7 @@ func Test_include(t *testing.T) {
600
600
profile * string
601
601
annotations map [string ]interface {}
602
602
caps * configv1.ClusterVersionCapabilitiesStatus
603
+ overrides []configv1.ComponentOverride
603
604
604
605
expected error
605
606
}{
@@ -765,6 +766,44 @@ func Test_include(t *testing.T) {
765
766
EnabledCapabilities : []configv1.ClusterVersionCapability {"cap1" , "cap2" , "cap3" },
766
767
},
767
768
},
769
+ {
770
+ name : "unrelated override" ,
771
+ annotations : map [string ]interface {}{},
772
+ overrides : []configv1.ComponentOverride {
773
+ {
774
+ Kind : "Pod" ,
775
+ Name : "my-pod" ,
776
+ Namespace : "my-namespace" ,
777
+ Unmanaged : true ,
778
+ },
779
+ },
780
+ },
781
+ {
782
+ name : "override, but managed" ,
783
+ annotations : map [string ]interface {}{},
784
+ overrides : []configv1.ComponentOverride {
785
+ {
786
+ Group : "apps" ,
787
+ Kind : "Deployment" ,
788
+ Name : "my-deployment" ,
789
+ Namespace : "my-namespace" ,
790
+ },
791
+ },
792
+ },
793
+ {
794
+ name : "unmanaged override" ,
795
+ annotations : map [string ]interface {}{},
796
+ overrides : []configv1.ComponentOverride {
797
+ {
798
+ Group : "apps" ,
799
+ Kind : "Deployment" ,
800
+ Name : "my-deployment" ,
801
+ Namespace : "my-namespace" ,
802
+ Unmanaged : true ,
803
+ },
804
+ },
805
+ expected : fmt .Errorf ("overridden" ),
806
+ },
768
807
{
769
808
name : "all nil" ,
770
809
profile : nil ,
@@ -774,19 +813,27 @@ func Test_include(t *testing.T) {
774
813
}
775
814
776
815
for _ , tt := range tests {
777
- metadata := map [string ]interface {}{}
816
+ metadata := map [string ]interface {}{
817
+ "name" : "my-deployment" ,
818
+ "namespace" : "my-namespace" ,
819
+ }
778
820
t .Run (tt .name , func (t * testing.T ) {
779
821
if tt .annotations != nil {
780
822
metadata ["annotations" ] = tt .annotations
781
823
}
782
824
m := Manifest {
783
825
Obj : & unstructured.Unstructured {
784
826
Object : map [string ]interface {}{
785
- "metadata" : metadata ,
827
+ "apiVersion" : "apps/v1" ,
828
+ "kind" : "Deployment" ,
829
+ "metadata" : metadata ,
786
830
},
787
831
},
788
832
}
789
- err := m .Include (tt .exclude , tt .requiredFeatureSet , tt .profile , tt .caps )
833
+ err := m .populateFromObj ()
834
+ assert .Equal (t , nil , err )
835
+
836
+ err = m .Include (tt .exclude , tt .requiredFeatureSet , tt .profile , tt .caps , tt .overrides )
790
837
assert .Equal (t , tt .expected , err )
791
838
})
792
839
}
@@ -801,6 +848,7 @@ func TestIncludeAllowUnknownCapabilities(t *testing.T) {
801
848
profile * string
802
849
annotations map [string ]interface {}
803
850
caps * configv1.ClusterVersionCapabilitiesStatus
851
+ overrides []configv1.ComponentOverride
804
852
allowUnknown bool
805
853
806
854
expected error
@@ -844,7 +892,7 @@ func TestIncludeAllowUnknownCapabilities(t *testing.T) {
844
892
},
845
893
},
846
894
}
847
- err := m .IncludeAllowUnknownCapabilities (tt .exclude , tt .requiredFeatureSet , tt .profile , tt .caps , tt .allowUnknown )
895
+ err := m .IncludeAllowUnknownCapabilities (tt .exclude , tt .requiredFeatureSet , tt .profile , tt .caps , tt .overrides , tt . allowUnknown )
848
896
assert .Equal (t , tt .expected , err )
849
897
})
850
898
}
0 commit comments