mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 13:37:30 +00:00
Merge pull request #53589 from sttts/sttts-pkg-api-testing
Automatic merge from submit-queue (batch tested with PRs 53204, 53364, 53559, 53589, 53088). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. pkg/api: move *_test.go -> pkg/api/testing Cleaning up pkg/api, one little step towards pkg/apis/core.
This commit is contained in:
commit
3aff54f345
@ -19,7 +19,6 @@ go_library(
|
|||||||
"//federation/pkg/kubefed/init:go_default_library",
|
"//federation/pkg/kubefed/init:go_default_library",
|
||||||
"//federation/pkg/kubefed/util:go_default_library",
|
"//federation/pkg/kubefed/util:go_default_library",
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/apis/extensions:go_default_library",
|
"//pkg/apis/extensions:go_default_library",
|
||||||
"//pkg/apis/rbac:go_default_library",
|
"//pkg/apis/rbac:go_default_library",
|
||||||
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
"//pkg/client/clientset_generated/internalclientset:go_default_library",
|
||||||
@ -37,6 +36,7 @@ go_library(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
||||||
|
"//vendor/k8s.io/apiserver/pkg/storage/names:go_default_library",
|
||||||
"//vendor/k8s.io/apiserver/pkg/util/flag:go_default_library",
|
"//vendor/k8s.io/apiserver/pkg/util/flag:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library",
|
"//vendor/k8s.io/client-go/tools/clientcmd/api:go_default_library",
|
||||||
|
@ -26,11 +26,11 @@ import (
|
|||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/runtime"
|
"k8s.io/apimachinery/pkg/runtime"
|
||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
|
"k8s.io/apiserver/pkg/storage/names"
|
||||||
clientcmdapi "k8s.io/client-go/tools/clientcmd/api"
|
clientcmdapi "k8s.io/client-go/tools/clientcmd/api"
|
||||||
"k8s.io/kubernetes/federation/apis/federation"
|
"k8s.io/kubernetes/federation/apis/federation"
|
||||||
"k8s.io/kubernetes/federation/pkg/kubefed/util"
|
"k8s.io/kubernetes/federation/pkg/kubefed/util"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
|
||||||
extensions "k8s.io/kubernetes/pkg/apis/extensions"
|
extensions "k8s.io/kubernetes/pkg/apis/extensions"
|
||||||
"k8s.io/kubernetes/pkg/apis/rbac"
|
"k8s.io/kubernetes/pkg/apis/rbac"
|
||||||
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
"k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
|
||||||
@ -183,7 +183,7 @@ func (j *joinFederation) Run(f cmdutil.Factory, cmdOut io.Writer, config util.Ad
|
|||||||
joiningClusterName := j.commonOptions.Name
|
joiningClusterName := j.commonOptions.Name
|
||||||
secretName := j.options.secretName
|
secretName := j.options.secretName
|
||||||
if secretName == "" {
|
if secretName == "" {
|
||||||
secretName = k8s_api_v1.SimpleNameGenerator.GenerateName(j.commonOptions.Name + "-")
|
secretName = names.SimpleNameGenerator.GenerateName(j.commonOptions.Name + "-")
|
||||||
}
|
}
|
||||||
|
|
||||||
joiningClusterFactory := j.joningClusterFactory(config)
|
joiningClusterFactory := j.joningClusterFactory(config)
|
||||||
|
@ -29,7 +29,6 @@ go_library(
|
|||||||
"//federation/pkg/federation-controller/util:go_default_library",
|
"//federation/pkg/federation-controller/util:go_default_library",
|
||||||
"//federation/test/e2e/framework:go_default_library",
|
"//federation/test/e2e/framework:go_default_library",
|
||||||
"//federation/test/e2e/upgrades:go_default_library",
|
"//federation/test/e2e/upgrades:go_default_library",
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/cloudprovider:go_default_library",
|
"//pkg/cloudprovider:go_default_library",
|
||||||
"//test/e2e/chaosmonkey:go_default_library",
|
"//test/e2e/chaosmonkey:go_default_library",
|
||||||
"//test/e2e/common:go_default_library",
|
"//test/e2e/common:go_default_library",
|
||||||
@ -47,6 +46,7 @@ go_library(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/util/rand:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/rand:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/wait:go_default_library",
|
||||||
|
"//vendor/k8s.io/apiserver/pkg/storage/names:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/kubernetes:go_default_library",
|
"//vendor/k8s.io/client-go/kubernetes:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
"//vendor/k8s.io/client-go/tools/clientcmd:go_default_library",
|
||||||
],
|
],
|
||||||
|
@ -26,9 +26,9 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/api/errors"
|
"k8s.io/apimachinery/pkg/api/errors"
|
||||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||||
"k8s.io/apimachinery/pkg/util/wait"
|
"k8s.io/apimachinery/pkg/util/wait"
|
||||||
|
"k8s.io/apiserver/pkg/storage/names"
|
||||||
clientset "k8s.io/kubernetes/federation/client/clientset_generated/federation_clientset/typed/core/v1"
|
clientset "k8s.io/kubernetes/federation/client/clientset_generated/federation_clientset/typed/core/v1"
|
||||||
fedframework "k8s.io/kubernetes/federation/test/e2e/framework"
|
fedframework "k8s.io/kubernetes/federation/test/e2e/framework"
|
||||||
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
|
||||||
"k8s.io/kubernetes/test/e2e/framework"
|
"k8s.io/kubernetes/test/e2e/framework"
|
||||||
|
|
||||||
. "github.com/onsi/ginkgo"
|
. "github.com/onsi/ginkgo"
|
||||||
@ -71,7 +71,7 @@ var _ = framework.KubeDescribe("Federation namespace [Feature:Federation]", func
|
|||||||
fedframework.SkipUnlessFederated(f.ClientSet)
|
fedframework.SkipUnlessFederated(f.ClientSet)
|
||||||
|
|
||||||
nsName = createNamespace(f.FederationClientset.Core().Namespaces())
|
nsName = createNamespace(f.FederationClientset.Core().Namespaces())
|
||||||
rsName := k8s_api_v1.SimpleNameGenerator.GenerateName(replicaSetNamePrefix)
|
rsName := names.SimpleNameGenerator.GenerateName(replicaSetNamePrefix)
|
||||||
replicaCount := int32(2)
|
replicaCount := int32(2)
|
||||||
rs := &v1beta1.ReplicaSet{
|
rs := &v1beta1.ReplicaSet{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
@ -123,7 +123,7 @@ var _ = framework.KubeDescribe("Federation namespace [Feature:Federation]", func
|
|||||||
// Create resources in the namespace.
|
// Create resources in the namespace.
|
||||||
event := v1.Event{
|
event := v1.Event{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: k8s_api_v1.SimpleNameGenerator.GenerateName(eventNamePrefix),
|
Name: names.SimpleNameGenerator.GenerateName(eventNamePrefix),
|
||||||
Namespace: nsName,
|
Namespace: nsName,
|
||||||
},
|
},
|
||||||
InvolvedObject: v1.ObjectReference{
|
InvolvedObject: v1.ObjectReference{
|
||||||
@ -199,7 +199,7 @@ func verifyNsCascadingDeletion(nsClient clientset.NamespaceInterface, clusters f
|
|||||||
func createNamespace(nsClient clientset.NamespaceInterface) string {
|
func createNamespace(nsClient clientset.NamespaceInterface) string {
|
||||||
ns := v1.Namespace{
|
ns := v1.Namespace{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: k8s_api_v1.SimpleNameGenerator.GenerateName(namespacePrefix),
|
Name: names.SimpleNameGenerator.GenerateName(namespacePrefix),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
By(fmt.Sprintf("Creating namespace %s", ns.Name))
|
By(fmt.Sprintf("Creating namespace %s", ns.Name))
|
||||||
|
@ -60,6 +60,7 @@ federation/test/e2e
|
|||||||
federation/test/e2e/framework
|
federation/test/e2e/framework
|
||||||
federation/test/e2e/upgrades
|
federation/test/e2e/upgrades
|
||||||
federation/test/integration/framework
|
federation/test/integration/framework
|
||||||
|
pkg/api
|
||||||
pkg/api/endpoints
|
pkg/api/endpoints
|
||||||
pkg/api/helper
|
pkg/api/helper
|
||||||
pkg/api/helper/qos
|
pkg/api/helper/qos
|
||||||
|
@ -39,50 +39,6 @@ go_test(
|
|||||||
library = ":go_default_library",
|
library = ":go_default_library",
|
||||||
)
|
)
|
||||||
|
|
||||||
go_test(
|
|
||||||
name = "go_default_xtest",
|
|
||||||
srcs = [
|
|
||||||
"conversion_test.go",
|
|
||||||
"copy_test.go",
|
|
||||||
"deep_copy_test.go",
|
|
||||||
"defaulting_test.go",
|
|
||||||
"meta_test.go",
|
|
||||||
"serialization_proto_test.go",
|
|
||||||
"serialization_test.go",
|
|
||||||
"unstructured_test.go",
|
|
||||||
],
|
|
||||||
deps = [
|
|
||||||
":go_default_library",
|
|
||||||
"//pkg/api/testapi:go_default_library",
|
|
||||||
"//pkg/api/testing:go_default_library",
|
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/apis/extensions:go_default_library",
|
|
||||||
"//pkg/apis/extensions/v1beta1:go_default_library",
|
|
||||||
"//vendor/github.com/gogo/protobuf/proto:go_default_library",
|
|
||||||
"//vendor/github.com/golang/protobuf/proto:go_default_library",
|
|
||||||
"//vendor/github.com/google/gofuzz:go_default_library",
|
|
||||||
"//vendor/github.com/json-iterator/go:go_default_library",
|
|
||||||
"//vendor/k8s.io/api/core/v1:go_default_library",
|
|
||||||
"//vendor/k8s.io/api/extensions/v1beta1:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/testing/fuzzer:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/testing/roundtrip:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/conversion/unstructured:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/streaming:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/json:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/watch:go_default_library",
|
|
||||||
],
|
|
||||||
)
|
|
||||||
|
|
||||||
filegroup(
|
filegroup(
|
||||||
name = "package-srcs",
|
name = "package-srcs",
|
||||||
srcs = glob(["**"]),
|
srcs = glob(["**"]),
|
||||||
|
@ -3,12 +3,14 @@ package(default_visibility = ["//visibility:public"])
|
|||||||
load(
|
load(
|
||||||
"@io_bazel_rules_go//go:def.bzl",
|
"@io_bazel_rules_go//go:def.bzl",
|
||||||
"go_library",
|
"go_library",
|
||||||
|
"go_test",
|
||||||
)
|
)
|
||||||
|
|
||||||
go_library(
|
go_library(
|
||||||
name = "go_default_library",
|
name = "go_default_library",
|
||||||
srcs = [
|
srcs = [
|
||||||
"conversion.go",
|
"conversion.go",
|
||||||
|
"doc.go",
|
||||||
"fuzzer.go",
|
"fuzzer.go",
|
||||||
"pod_specs.go",
|
"pod_specs.go",
|
||||||
],
|
],
|
||||||
@ -54,3 +56,52 @@ filegroup(
|
|||||||
],
|
],
|
||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
go_test(
|
||||||
|
name = "go_default_test",
|
||||||
|
srcs = [
|
||||||
|
"backward_compatibility_test.go",
|
||||||
|
"conversion_test.go",
|
||||||
|
"copy_test.go",
|
||||||
|
"deep_copy_test.go",
|
||||||
|
"defaulting_test.go",
|
||||||
|
"meta_test.go",
|
||||||
|
"serialization_proto_test.go",
|
||||||
|
"serialization_test.go",
|
||||||
|
"unstructured_test.go",
|
||||||
|
],
|
||||||
|
library = ":go_default_library",
|
||||||
|
deps = [
|
||||||
|
"//pkg/api:go_default_library",
|
||||||
|
"//pkg/api/install:go_default_library",
|
||||||
|
"//pkg/api/testapi:go_default_library",
|
||||||
|
"//pkg/api/testing/compat:go_default_library",
|
||||||
|
"//pkg/api/v1:go_default_library",
|
||||||
|
"//pkg/api/validation:go_default_library",
|
||||||
|
"//pkg/apis/extensions:go_default_library",
|
||||||
|
"//pkg/apis/extensions/v1beta1:go_default_library",
|
||||||
|
"//vendor/github.com/gogo/protobuf/proto:go_default_library",
|
||||||
|
"//vendor/github.com/golang/protobuf/proto:go_default_library",
|
||||||
|
"//vendor/github.com/google/gofuzz:go_default_library",
|
||||||
|
"//vendor/github.com/json-iterator/go:go_default_library",
|
||||||
|
"//vendor/k8s.io/api/core/v1:go_default_library",
|
||||||
|
"//vendor/k8s.io/api/extensions/v1beta1:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/testing/fuzzer:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/api/testing/roundtrip:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/conversion:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/conversion/unstructured:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/protobuf:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/runtime/serializer/streaming:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/json:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/sets:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
||||||
|
"//vendor/k8s.io/apimachinery/pkg/watch:go_default_library",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package v1_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"testing"
|
"testing"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"io/ioutil"
|
"io/ioutil"
|
||||||
@ -27,11 +27,10 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/diff"
|
"k8s.io/apimachinery/pkg/util/diff"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/testapi"
|
"k8s.io/kubernetes/pkg/api/testapi"
|
||||||
kapitesting "k8s.io/kubernetes/pkg/api/testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func BenchmarkPodConversion(b *testing.B) {
|
func BenchmarkPodConversion(b *testing.B) {
|
||||||
apiObjectFuzzer := fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs)
|
apiObjectFuzzer := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs)
|
||||||
items := make([]api.Pod, 4)
|
items := make([]api.Pod, 4)
|
||||||
for i := range items {
|
for i := range items {
|
||||||
apiObjectFuzzer.Fuzz(&items[i])
|
apiObjectFuzzer.Fuzz(&items[i])
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
@ -30,13 +30,12 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/diff"
|
"k8s.io/apimachinery/pkg/util/diff"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/testapi"
|
"k8s.io/kubernetes/pkg/api/testapi"
|
||||||
kapitesting "k8s.io/kubernetes/pkg/api/testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestDeepCopyApiObjects(t *testing.T) {
|
func TestDeepCopyApiObjects(t *testing.T) {
|
||||||
for i := 0; i < *roundtrip.FuzzIters; i++ {
|
for i := 0; i < *roundtrip.FuzzIters; i++ {
|
||||||
for _, version := range []schema.GroupVersion{testapi.Default.InternalGroupVersion(), api.Registry.GroupOrDie(api.GroupName).GroupVersion} {
|
for _, version := range []schema.GroupVersion{testapi.Default.InternalGroupVersion(), api.Registry.GroupOrDie(api.GroupName).GroupVersion} {
|
||||||
f := fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(rand.Int63()), api.Codecs)
|
f := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(rand.Int63()), api.Codecs)
|
||||||
for kind := range api.Scheme.KnownTypes(version) {
|
for kind := range api.Scheme.KnownTypes(version) {
|
||||||
doDeepCopyTest(t, version.WithKind(kind), f)
|
doDeepCopyTest(t, version.WithKind(kind), f)
|
||||||
}
|
}
|
||||||
@ -80,7 +79,7 @@ func doDeepCopyTest(t *testing.T, kind schema.GroupVersionKind, f *fuzz.Fuzzer)
|
|||||||
func TestDeepCopySingleType(t *testing.T) {
|
func TestDeepCopySingleType(t *testing.T) {
|
||||||
for i := 0; i < *roundtrip.FuzzIters; i++ {
|
for i := 0; i < *roundtrip.FuzzIters; i++ {
|
||||||
for _, version := range []schema.GroupVersion{testapi.Default.InternalGroupVersion(), api.Registry.GroupOrDie(api.GroupName).GroupVersion} {
|
for _, version := range []schema.GroupVersion{testapi.Default.InternalGroupVersion(), api.Registry.GroupOrDie(api.GroupName).GroupVersion} {
|
||||||
f := fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(rand.Int63()), api.Codecs)
|
f := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(rand.Int63()), api.Codecs)
|
||||||
doDeepCopyTest(t, version.WithKind("Pod"), f)
|
doDeepCopyTest(t, version.WithKind("Pod"), f)
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"io/ioutil"
|
"io/ioutil"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"math/rand"
|
"math/rand"
|
20
pkg/api/testing/doc.go
Normal file
20
pkg/api/testing/doc.go
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
/*
|
||||||
|
Copyright 2017 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 testing contains
|
||||||
|
// - all generic API tests which depend on Kubernetes API types
|
||||||
|
// - all cross-Kubernetes-API tests.
|
||||||
|
package testing
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"reflect"
|
"reflect"
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
@ -34,7 +34,6 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/runtime/serializer/protobuf"
|
"k8s.io/apimachinery/pkg/runtime/serializer/protobuf"
|
||||||
"k8s.io/apimachinery/pkg/util/diff"
|
"k8s.io/apimachinery/pkg/util/diff"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
kapitesting "k8s.io/kubernetes/pkg/api/testing"
|
|
||||||
_ "k8s.io/kubernetes/pkg/apis/extensions"
|
_ "k8s.io/kubernetes/pkg/apis/extensions"
|
||||||
_ "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
_ "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
)
|
)
|
||||||
@ -98,7 +97,7 @@ func fieldsHaveProtobufTags(obj reflect.Type) error {
|
|||||||
|
|
||||||
func TestProtobufRoundTrip(t *testing.T) {
|
func TestProtobufRoundTrip(t *testing.T) {
|
||||||
obj := &v1.Pod{}
|
obj := &v1.Pod{}
|
||||||
fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs).Fuzz(obj)
|
fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs).Fuzz(obj)
|
||||||
// InitContainers are turned into annotations by conversion.
|
// InitContainers are turned into annotations by conversion.
|
||||||
obj.Spec.InitContainers = nil
|
obj.Spec.InitContainers = nil
|
||||||
obj.Status.InitContainerStatuses = nil
|
obj.Status.InitContainerStatuses = nil
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"bytes"
|
"bytes"
|
||||||
@ -45,7 +45,6 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/watch"
|
"k8s.io/apimachinery/pkg/watch"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/testapi"
|
"k8s.io/kubernetes/pkg/api/testapi"
|
||||||
kapitesting "k8s.io/kubernetes/pkg/api/testing"
|
|
||||||
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
"k8s.io/kubernetes/pkg/apis/extensions"
|
"k8s.io/kubernetes/pkg/apis/extensions"
|
||||||
k8s_v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
k8s_v1beta1 "k8s.io/kubernetes/pkg/apis/extensions/v1beta1"
|
||||||
@ -54,7 +53,7 @@ import (
|
|||||||
// fuzzInternalObject fuzzes an arbitrary runtime object using the appropriate
|
// fuzzInternalObject fuzzes an arbitrary runtime object using the appropriate
|
||||||
// fuzzer registered with the apitesting package.
|
// fuzzer registered with the apitesting package.
|
||||||
func fuzzInternalObject(t *testing.T, forVersion schema.GroupVersion, item runtime.Object, seed int64) runtime.Object {
|
func fuzzInternalObject(t *testing.T, forVersion schema.GroupVersion, item runtime.Object, seed int64) runtime.Object {
|
||||||
fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(seed), api.Codecs).Fuzz(item)
|
fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(seed), api.Codecs).Fuzz(item)
|
||||||
|
|
||||||
j, err := meta.TypeAccessor(item)
|
j, err := meta.TypeAccessor(item)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -144,7 +143,7 @@ func TestSpecificKind(t *testing.T) {
|
|||||||
internalGVK := schema.GroupVersionKind{Group: "extensions", Version: runtime.APIVersionInternal, Kind: "DaemonSet"}
|
internalGVK := schema.GroupVersionKind{Group: "extensions", Version: runtime.APIVersionInternal, Kind: "DaemonSet"}
|
||||||
|
|
||||||
seed := rand.Int63()
|
seed := rand.Int63()
|
||||||
fuzzer := fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(seed), api.Codecs)
|
fuzzer := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(seed), api.Codecs)
|
||||||
|
|
||||||
roundtrip.RoundTripSpecificKind(t, internalGVK, api.Scheme, api.Codecs, fuzzer, nil)
|
roundtrip.RoundTripSpecificKind(t, internalGVK, api.Scheme, api.Codecs, fuzzer, nil)
|
||||||
}
|
}
|
||||||
@ -205,7 +204,7 @@ func TestCommonKindsRegistered(t *testing.T) {
|
|||||||
// in all of the API groups registered for test in the testapi package.
|
// in all of the API groups registered for test in the testapi package.
|
||||||
func TestRoundTripTypes(t *testing.T) {
|
func TestRoundTripTypes(t *testing.T) {
|
||||||
seed := rand.Int63()
|
seed := rand.Int63()
|
||||||
fuzzer := fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(seed), api.Codecs)
|
fuzzer := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(seed), api.Codecs)
|
||||||
|
|
||||||
nonRoundTrippableTypes := map[schema.GroupVersionKind]bool{
|
nonRoundTrippableTypes := map[schema.GroupVersionKind]bool{
|
||||||
{Group: "componentconfig", Version: runtime.APIVersionInternal, Kind: "KubeProxyConfiguration"}: true,
|
{Group: "componentconfig", Version: runtime.APIVersionInternal, Kind: "KubeProxyConfiguration"}: true,
|
||||||
@ -300,7 +299,7 @@ func TestUnversionedTypes(t *testing.T) {
|
|||||||
// TestObjectWatchFraming establishes that a watch event can be encoded and
|
// TestObjectWatchFraming establishes that a watch event can be encoded and
|
||||||
// decoded correctly through each of the supported RFC2046 media types.
|
// decoded correctly through each of the supported RFC2046 media types.
|
||||||
func TestObjectWatchFraming(t *testing.T) {
|
func TestObjectWatchFraming(t *testing.T) {
|
||||||
f := fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs)
|
f := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs)
|
||||||
secret := &api.Secret{}
|
secret := &api.Secret{}
|
||||||
f.Fuzz(secret)
|
f.Fuzz(secret)
|
||||||
secret.Data["binary"] = []byte{0x00, 0x10, 0x30, 0x55, 0xff, 0x00}
|
secret.Data["binary"] = []byte{0x00, 0x10, 0x30, 0x55, 0xff, 0x00}
|
||||||
@ -382,7 +381,7 @@ func TestObjectWatchFraming(t *testing.T) {
|
|||||||
const benchmarkSeed = 100
|
const benchmarkSeed = 100
|
||||||
|
|
||||||
func benchmarkItems(b *testing.B) []v1.Pod {
|
func benchmarkItems(b *testing.B) []v1.Pod {
|
||||||
apiObjectFuzzer := fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs)
|
apiObjectFuzzer := fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(benchmarkSeed), api.Codecs)
|
||||||
items := make([]v1.Pod, 10)
|
items := make([]v1.Pod, 10)
|
||||||
for i := range items {
|
for i := range items {
|
||||||
var pod api.Pod
|
var pod api.Pod
|
@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
|
|||||||
limitations under the License.
|
limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package api_test
|
package testing
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"math/rand"
|
"math/rand"
|
||||||
@ -32,7 +32,6 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/json"
|
"k8s.io/apimachinery/pkg/util/json"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
"k8s.io/kubernetes/pkg/api/testapi"
|
"k8s.io/kubernetes/pkg/api/testapi"
|
||||||
kapitesting "k8s.io/kubernetes/pkg/api/testing"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func doRoundTrip(t *testing.T, group testapi.TestGroup, kind string) {
|
func doRoundTrip(t *testing.T, group testapi.TestGroup, kind string) {
|
||||||
@ -44,7 +43,7 @@ func doRoundTrip(t *testing.T, group testapi.TestGroup, kind string) {
|
|||||||
t.Fatalf("Couldn't create internal object %v: %v", kind, err)
|
t.Fatalf("Couldn't create internal object %v: %v", kind, err)
|
||||||
}
|
}
|
||||||
seed := rand.Int63()
|
seed := rand.Int63()
|
||||||
fuzzer.FuzzerFor(kapitesting.FuzzerFuncs, rand.NewSource(seed), api.Codecs).
|
fuzzer.FuzzerFor(FuzzerFuncs, rand.NewSource(seed), api.Codecs).
|
||||||
// We are explicitly overwriting custom fuzzing functions, to ensure
|
// We are explicitly overwriting custom fuzzing functions, to ensure
|
||||||
// that InitContainers and their statuses are not generated. This is
|
// that InitContainers and their statuses are not generated. This is
|
||||||
// because in thise test we are simply doing json operations, in which
|
// because in thise test we are simply doing json operations, in which
|
@ -12,7 +12,6 @@ go_library(
|
|||||||
"conversion.go",
|
"conversion.go",
|
||||||
"defaults.go",
|
"defaults.go",
|
||||||
"doc.go",
|
"doc.go",
|
||||||
"generate.go",
|
|
||||||
"register.go",
|
"register.go",
|
||||||
"zz_generated.conversion.go",
|
"zz_generated.conversion.go",
|
||||||
"zz_generated.defaults.go",
|
"zz_generated.defaults.go",
|
||||||
@ -30,7 +29,6 @@ go_library(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/rand:go_default_library",
|
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
@ -38,16 +36,13 @@ go_library(
|
|||||||
go_test(
|
go_test(
|
||||||
name = "go_default_xtest",
|
name = "go_default_xtest",
|
||||||
srcs = [
|
srcs = [
|
||||||
"backward_compatibility_test.go",
|
|
||||||
"conversion_test.go",
|
"conversion_test.go",
|
||||||
"defaults_test.go",
|
"defaults_test.go",
|
||||||
],
|
],
|
||||||
deps = [
|
deps = [
|
||||||
":go_default_library",
|
":go_default_library",
|
||||||
"//pkg/api:go_default_library",
|
"//pkg/api:go_default_library",
|
||||||
"//pkg/api/install:go_default_library",
|
"//pkg/api/testapi:go_default_library",
|
||||||
"//pkg/api/testing/compat:go_default_library",
|
|
||||||
"//pkg/api/validation:go_default_library",
|
|
||||||
"//vendor/k8s.io/api/core/v1:go_default_library",
|
"//vendor/k8s.io/api/core/v1:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/equality:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library",
|
||||||
@ -55,7 +50,6 @@ go_test(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/diff:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/validation/field:go_default_library",
|
|
||||||
],
|
],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -30,6 +30,9 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/diff"
|
"k8s.io/apimachinery/pkg/util/diff"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
|
||||||
|
// enforce that all types are installed
|
||||||
|
_ "k8s.io/kubernetes/pkg/api/testapi"
|
||||||
)
|
)
|
||||||
|
|
||||||
func TestPodLogOptions(t *testing.T) {
|
func TestPodLogOptions(t *testing.T) {
|
||||||
|
@ -28,6 +28,9 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/util/intstr"
|
"k8s.io/apimachinery/pkg/util/intstr"
|
||||||
"k8s.io/kubernetes/pkg/api"
|
"k8s.io/kubernetes/pkg/api"
|
||||||
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
k8s_api_v1 "k8s.io/kubernetes/pkg/api/v1"
|
||||||
|
|
||||||
|
// enforce that all types are installed
|
||||||
|
_ "k8s.io/kubernetes/pkg/api/testapi"
|
||||||
)
|
)
|
||||||
|
|
||||||
func roundTrip(t *testing.T, obj runtime.Object) runtime.Object {
|
func roundTrip(t *testing.T, obj runtime.Object) runtime.Object {
|
||||||
|
@ -1,65 +0,0 @@
|
|||||||
/*
|
|
||||||
Copyright 2014 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 v1
|
|
||||||
|
|
||||||
import (
|
|
||||||
"fmt"
|
|
||||||
"k8s.io/api/core/v1"
|
|
||||||
|
|
||||||
utilrand "k8s.io/apimachinery/pkg/util/rand"
|
|
||||||
)
|
|
||||||
|
|
||||||
// NameGenerator generates names for objects. Some backends may have more information
|
|
||||||
// available to guide selection of new names and this interface hides those details.
|
|
||||||
type NameGenerator interface {
|
|
||||||
// GenerateName generates a valid name from the base name, adding a random suffix to the
|
|
||||||
// the base. If base is valid, the returned name must also be valid. The generator is
|
|
||||||
// responsible for knowing the maximum valid name length.
|
|
||||||
GenerateName(base string) string
|
|
||||||
}
|
|
||||||
|
|
||||||
// GenerateName will resolve the object name of the provided v1.ObjectMeta to a generated version if
|
|
||||||
// necessary. It expects that validation for v1.ObjectMeta has already completed (that Base is a
|
|
||||||
// valid name) and that the NameGenerator generates a name that is also valid.
|
|
||||||
func GenerateName(u NameGenerator, meta *v1.ObjectMeta) {
|
|
||||||
if len(meta.GenerateName) == 0 || len(meta.Name) != 0 {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
meta.Name = u.GenerateName(meta.GenerateName)
|
|
||||||
}
|
|
||||||
|
|
||||||
// simpleNameGenerator generates random names.
|
|
||||||
type simpleNameGenerator struct{}
|
|
||||||
|
|
||||||
// SimpleNameGenerator is a generator that returns the name plus a random suffix of five alphanumerics
|
|
||||||
// when a name is requested. The string is guaranteed to not exceed the length of a standard Kubernetes
|
|
||||||
// name (63 characters)
|
|
||||||
var SimpleNameGenerator NameGenerator = simpleNameGenerator{}
|
|
||||||
|
|
||||||
const (
|
|
||||||
// TODO: make this flexible for non-core resources with alternate naming rules.
|
|
||||||
maxNameLength = 63
|
|
||||||
randomLength = 5
|
|
||||||
maxGeneratedNameLength = maxNameLength - randomLength
|
|
||||||
)
|
|
||||||
|
|
||||||
func (simpleNameGenerator) GenerateName(base string) string {
|
|
||||||
if len(base) > maxGeneratedNameLength {
|
|
||||||
base = base[:maxGeneratedNameLength]
|
|
||||||
}
|
|
||||||
return fmt.Sprintf("%s%s", base, utilrand.String(randomLength))
|
|
||||||
}
|
|
@ -46,7 +46,6 @@ go_test(
|
|||||||
],
|
],
|
||||||
library = ":go_default_library",
|
library = ":go_default_library",
|
||||||
deps = [
|
deps = [
|
||||||
"//pkg/api/v1:go_default_library",
|
|
||||||
"//pkg/controller:go_default_library",
|
"//pkg/controller:go_default_library",
|
||||||
"//pkg/util/hash:go_default_library",
|
"//pkg/util/hash:go_default_library",
|
||||||
"//vendor/k8s.io/api/core/v1:go_default_library",
|
"//vendor/k8s.io/api/core/v1:go_default_library",
|
||||||
@ -56,6 +55,7 @@ go_test(
|
|||||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/types:go_default_library",
|
||||||
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
"//vendor/k8s.io/apimachinery/pkg/util/intstr:go_default_library",
|
||||||
|
"//vendor/k8s.io/apiserver/pkg/storage/names:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/kubernetes/fake:go_default_library",
|
"//vendor/k8s.io/client-go/kubernetes/fake:go_default_library",
|
||||||
"//vendor/k8s.io/client-go/testing:go_default_library",
|
"//vendor/k8s.io/client-go/testing:go_default_library",
|
||||||
],
|
],
|
||||||
|
@ -32,9 +32,9 @@ import (
|
|||||||
"k8s.io/apimachinery/pkg/runtime"
|
"k8s.io/apimachinery/pkg/runtime"
|
||||||
"k8s.io/apimachinery/pkg/types"
|
"k8s.io/apimachinery/pkg/types"
|
||||||
"k8s.io/apimachinery/pkg/util/intstr"
|
"k8s.io/apimachinery/pkg/util/intstr"
|
||||||
|
"k8s.io/apiserver/pkg/storage/names"
|
||||||
"k8s.io/client-go/kubernetes/fake"
|
"k8s.io/client-go/kubernetes/fake"
|
||||||
core "k8s.io/client-go/testing"
|
core "k8s.io/client-go/testing"
|
||||||
apiv1 "k8s.io/kubernetes/pkg/api/v1"
|
|
||||||
"k8s.io/kubernetes/pkg/controller"
|
"k8s.io/kubernetes/pkg/controller"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -88,7 +88,7 @@ func addUpdatePodsReactor(fakeClient *fake.Clientset) *fake.Clientset {
|
|||||||
func generateRSWithLabel(labels map[string]string, image string) extensions.ReplicaSet {
|
func generateRSWithLabel(labels map[string]string, image string) extensions.ReplicaSet {
|
||||||
return extensions.ReplicaSet{
|
return extensions.ReplicaSet{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: apiv1.SimpleNameGenerator.GenerateName("replicaset"),
|
Name: names.SimpleNameGenerator.GenerateName("replicaset"),
|
||||||
Labels: labels,
|
Labels: labels,
|
||||||
},
|
},
|
||||||
Spec: extensions.ReplicaSetSpec{
|
Spec: extensions.ReplicaSetSpec{
|
||||||
@ -130,7 +130,7 @@ func generateRS(deployment extensions.Deployment) extensions.ReplicaSet {
|
|||||||
return extensions.ReplicaSet{
|
return extensions.ReplicaSet{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
UID: randomUID(),
|
UID: randomUID(),
|
||||||
Name: apiv1.SimpleNameGenerator.GenerateName("replicaset"),
|
Name: names.SimpleNameGenerator.GenerateName("replicaset"),
|
||||||
Labels: template.Labels,
|
Labels: template.Labels,
|
||||||
OwnerReferences: []metav1.OwnerReference{*newDControllerRef(&deployment)},
|
OwnerReferences: []metav1.OwnerReference{*newDControllerRef(&deployment)},
|
||||||
},
|
},
|
||||||
|
Loading…
Reference in New Issue
Block a user