Adding unit tests for kube-scheduler Config Complete() method.

This commit is contained in:
Matthew Mix 2019-12-29 20:17:00 -05:00 committed by Matt Mix
parent 6099a739d8
commit 57f2d7ad6f
2 changed files with 78 additions and 1 deletions

View File

@ -1,4 +1,4 @@
load("@io_bazel_rules_go//go:def.bzl", "go_library")
load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
go_library(
name = "go_default_library",
@ -33,3 +33,13 @@ filegroup(
tags = ["automanaged"],
visibility = ["//visibility:public"],
)
go_test(
name = "go_default_test",
srcs = ["config_test.go"],
embed = [":go_default_library"],
deps = [
"//staging/src/k8s.io/apiserver/pkg/server:go_default_library",
"//vendor/github.com/google/go-cmp/cmp:go_default_library",
],
)

View File

@ -0,0 +1,67 @@
/*
Copyright 2018 The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
package config
import (
"testing"
"github.com/google/go-cmp/cmp"
apiserver "k8s.io/apiserver/pkg/server"
)
func TestConfigComplete(t *testing.T) {
scenarios := []struct {
name string
want *Config
config *Config
}{
{
name: "SetInsecureServingName",
want: &Config{
InsecureServing: &apiserver.DeprecatedInsecureServingInfo{
Name: "healthz",
},
},
config: &Config{
InsecureServing: &apiserver.DeprecatedInsecureServingInfo{},
},
},
{
name: "SetMetricsInsecureServingName",
want: &Config{
InsecureMetricsServing: &apiserver.DeprecatedInsecureServingInfo{
Name: "metrics",
},
},
config: &Config{
InsecureMetricsServing: &apiserver.DeprecatedInsecureServingInfo{},
},
},
}
for _, scenario := range scenarios {
t.Run(scenario.name, func(t *testing.T) {
cc := scenario.config.Complete()
returnValue := cc.completedConfig.Config
if diff := cmp.Diff(scenario.want, returnValue); diff != "" {
t.Errorf("Complete(): Unexpected return value (-want, +got): %s", diff)
}
})
}
}