Merge pull request #118730 from my-git9/ut-features

[UT] increase coverage ut for kubeadm/app/features
This commit is contained in:
Kubernetes Prow Robot 2023-06-20 07:54:36 -07:00 committed by GitHub
commit 2d60430a16
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 32 additions and 10 deletions

View File

@ -102,15 +102,6 @@ func Supports(featureList FeatureList, featureName string) bool {
return false
}
// Keys returns a slice of feature names for a given feature set
func Keys(featureList FeatureList) []string {
var list []string
for k := range featureList {
list = append(list, k)
}
return list
}
// KnownFeatures returns a slice of strings describing the FeatureList features.
func KnownFeatures(f *FeatureList) []string {
var known []string

View File

@ -207,13 +207,44 @@ func TestCheckDeprecatedFlags(t *testing.T) {
features: map[string]bool{"feature1": true},
expectedMsg: map[string]string{},
},
{
name: "invalid feature",
features: map[string]bool{"feature2": true},
expectedMsg: map[string]string{"feature2": "Unknown feature gate flag: feature2"},
},
}
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
msg := CheckDeprecatedFlags(&someFeatures, test.features)
if !reflect.DeepEqual(test.expectedMsg, msg) {
t.Error("CheckDeprecatedFlags didn't returned expected message")
t.Errorf("CheckDeprecatedFlags() = %v, want %v", msg, test.expectedMsg)
}
})
}
}
func TestSupports(t *testing.T) {
tests := []struct {
name string
featureName string
want bool
}{
{
name: "the feature is not supported",
featureName: "foo",
want: false,
},
{
name: "the feature is supported",
featureName: PublicKeysECDSA,
want: true,
},
}
for _, test := range tests {
t.Run(test.name, func(t *testing.T) {
if got := Supports(InitFeatureGates, test.featureName); got != test.want {
t.Errorf("Supports() = %v, want %v", got, test.want)
}
})
}