mirror of
https://github.com/kubernetes/kubectl.git
synced 2026-06-09 00:32:30 -04:00
Merge pull request #135888 from scaliby/deduplicate-client-creation
Deduplicate client creation in describe tests Kubernetes-commit: 3fb97a0c8beb5f66d26a95e198c41295de3d31f3
This commit is contained in:
commit
9c08159fc1
3 changed files with 232 additions and 210 deletions
4
go.mod
4
go.mod
|
|
@ -31,9 +31,9 @@ require (
|
|||
golang.org/x/text v0.31.0
|
||||
gopkg.in/evanphx/json-patch.v4 v4.13.0
|
||||
k8s.io/api v0.0.0-20251223142543-49b7fdb8413e
|
||||
k8s.io/apimachinery v0.0.0-20251223142228-10257273d7e7
|
||||
k8s.io/apimachinery v0.0.0-20260107193351-2936fea9b085
|
||||
k8s.io/cli-runtime v0.0.0-20251223150732-70c3df11de00
|
||||
k8s.io/client-go v0.0.0-20260107143355-2f784525d5b6
|
||||
k8s.io/client-go v0.0.0-20260107183400-52d9854c37fe
|
||||
k8s.io/component-base v0.0.0-20251226184832-b8fb4e3d1155
|
||||
k8s.io/component-helpers v0.0.0-20251223144302-5042f4d06524
|
||||
k8s.io/klog/v2 v2.130.1
|
||||
|
|
|
|||
8
go.sum
8
go.sum
|
|
@ -194,12 +194,12 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
|||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
k8s.io/api v0.0.0-20251223142543-49b7fdb8413e h1:LzUvqdOqvu9sv5CRELRFmZyOc0OZpkffmQpQStncYyo=
|
||||
k8s.io/api v0.0.0-20251223142543-49b7fdb8413e/go.mod h1:6bJjOS8ww83H+5m1wb7JJw1NHEOZiCabMdNDjRmR2NY=
|
||||
k8s.io/apimachinery v0.0.0-20251223142228-10257273d7e7 h1:6PdG2x/Z3kYAoRAoiHaJ/DzTgMdY/E73+GKxrMWJvok=
|
||||
k8s.io/apimachinery v0.0.0-20251223142228-10257273d7e7/go.mod h1:4mERM8sOoVa6HQ0eN/MFv1Q18wFYr64mgZRlZqiwnX0=
|
||||
k8s.io/apimachinery v0.0.0-20260107193351-2936fea9b085 h1:X3bHuH5ZqP/J26+Oc7sG8nzCx3Iu8MJZD7YC+UrxE3E=
|
||||
k8s.io/apimachinery v0.0.0-20260107193351-2936fea9b085/go.mod h1:4mERM8sOoVa6HQ0eN/MFv1Q18wFYr64mgZRlZqiwnX0=
|
||||
k8s.io/cli-runtime v0.0.0-20251223150732-70c3df11de00 h1:OPBOM6Gc0aD7Md7xEail1qs3vEmLsZB4zjb5gVfz+0Y=
|
||||
k8s.io/cli-runtime v0.0.0-20251223150732-70c3df11de00/go.mod h1:5m7qA9j1GVqY+PCAg/vQY1v6C9V/gwtp1bd9xPoRMdI=
|
||||
k8s.io/client-go v0.0.0-20260107143355-2f784525d5b6 h1:Dx3+Q5yPgzPA08YMvXXxzhn6P1M1DMqEV0/1RukFvMs=
|
||||
k8s.io/client-go v0.0.0-20260107143355-2f784525d5b6/go.mod h1:yQi9zOsCJ/SiDlQWme0fBONYF8hLGs7Tgso0lpKZyio=
|
||||
k8s.io/client-go v0.0.0-20260107183400-52d9854c37fe h1:O1x05ZfuJU11zAmeSdZf3NyrSgTQYdkqhVmQvRe6OQ0=
|
||||
k8s.io/client-go v0.0.0-20260107183400-52d9854c37fe/go.mod h1:yQi9zOsCJ/SiDlQWme0fBONYF8hLGs7Tgso0lpKZyio=
|
||||
k8s.io/component-base v0.0.0-20251226184832-b8fb4e3d1155 h1:AQMc+yP616jEhViFYYZuHtLelMvWpCivQU+sn0Memns=
|
||||
k8s.io/component-base v0.0.0-20251226184832-b8fb4e3d1155/go.mod h1:ZIC9uvuLPK/4xNNbdRo4OWHw4y6NeD94loNfGDgJqUY=
|
||||
k8s.io/component-helpers v0.0.0-20251223144302-5042f4d06524 h1:q5KJwLe8gev+rov0uiCI6oMmZCDmYr+cXH+74rOwA5k=
|
||||
|
|
|
|||
|
|
@ -134,7 +134,7 @@ func TestDescribePod(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribePodServiceAccount(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.Pod{
|
||||
pod := &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -142,7 +142,8 @@ func TestDescribePodServiceAccount(t *testing.T) {
|
|||
Spec: corev1.PodSpec{
|
||||
ServiceAccountName: "fooaccount",
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(pod)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := PodDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -158,7 +159,7 @@ func TestDescribePodServiceAccount(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribePodEphemeralContainers(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.Pod{
|
||||
pod := &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -187,7 +188,8 @@ func TestDescribePodEphemeralContainers(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(pod)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := PodDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -203,7 +205,7 @@ func TestDescribePodEphemeralContainers(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribePodNode(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.Pod{
|
||||
pod := &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -215,7 +217,8 @@ func TestDescribePodNode(t *testing.T) {
|
|||
HostIP: "127.0.0.1",
|
||||
NominatedNodeName: "nodeA",
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(pod)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := PodDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -231,7 +234,7 @@ func TestDescribePodNode(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribePodTolerations(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.Pod{
|
||||
pod := &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -247,7 +250,8 @@ func TestDescribePodTolerations(t *testing.T) {
|
|||
{Key: "key4", Effect: corev1.TaintEffectNoExecute, TolerationSeconds: &[]int64{60}[0]},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(pod)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := PodDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{})
|
||||
|
|
@ -314,7 +318,7 @@ func TestDescribePodVolumes(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribeTopologySpreadConstraints(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.Pod{
|
||||
pod := &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -334,7 +338,8 @@ func TestDescribeTopologySpreadConstraints(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(pod)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := PodDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{})
|
||||
|
|
@ -512,7 +517,7 @@ func TestDescribeNamespace(t *testing.T) {
|
|||
|
||||
func TestDescribePodPriority(t *testing.T) {
|
||||
priority := int32(1000)
|
||||
fake := fake.NewClientset(&corev1.Pod{
|
||||
pod := &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
},
|
||||
|
|
@ -520,7 +525,8 @@ func TestDescribePodPriority(t *testing.T) {
|
|||
PriorityClassName: "high-priority",
|
||||
Priority: &priority,
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(pod)
|
||||
c := &describeClient{T: t, Namespace: "", Interface: fake}
|
||||
d := PodDescriber{c}
|
||||
out, err := d.Describe("", "bar", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -740,7 +746,7 @@ func TestDescribePriorityClass(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribeConfigMap(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.ConfigMap{
|
||||
configMap := &corev1.ConfigMap{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "mycm",
|
||||
Namespace: "foo",
|
||||
|
|
@ -753,7 +759,8 @@ func TestDescribeConfigMap(t *testing.T) {
|
|||
"binarykey1": {0xFF, 0xFE, 0xFD, 0xFC, 0xFB},
|
||||
"binarykey2": {0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(configMap)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := ConfigMapDescriber{c}
|
||||
out, err := d.Describe("foo", "mycm", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -798,7 +805,7 @@ Events: <none>
|
|||
}
|
||||
|
||||
func TestDescribeLimitRange(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.LimitRange{
|
||||
limitRange := &corev1.LimitRange{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "mylr",
|
||||
Namespace: "foo",
|
||||
|
|
@ -826,7 +833,8 @@ func TestDescribeLimitRange(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(limitRange)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := LimitRangeDescriber{c}
|
||||
out, err := d.Describe("foo", "mylr", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -3560,7 +3568,7 @@ func TestDescribeIngress(t *testing.T) {
|
|||
},
|
||||
}
|
||||
|
||||
netv1 := fake.NewClientset(&networkingv1.Ingress{
|
||||
netv1 := &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3583,7 +3591,7 @@ func TestDescribeIngress(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
backendResource := networkingv1.IngressBackend{
|
||||
Resource: &corev1.TypedLocalObjectReference{
|
||||
|
|
@ -3600,7 +3608,7 @@ func TestDescribeIngress(t *testing.T) {
|
|||
}
|
||||
|
||||
tests := map[string]struct {
|
||||
input *fake.Clientset
|
||||
input runtime.Object
|
||||
output string
|
||||
}{
|
||||
"IngressRule.HTTP.Paths.Backend.Service v1": {
|
||||
|
|
@ -3620,7 +3628,7 @@ Annotations: <none>
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"IngressRule.HTTP.Paths.Backend.Resource v1": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3643,7 +3651,7 @@ Events: <none>` + "\n",
|
|||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3659,7 +3667,7 @@ Annotations: <none>
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"IngressRule.HTTP.Paths.Backend.Resource v1 Without APIGroup": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3682,7 +3690,7 @@ Events: <none>` + "\n",
|
|||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3698,7 +3706,7 @@ Annotations: <none>
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"Spec.DefaultBackend.Service & IngressRule.HTTP.Paths.Backend.Service v1": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3722,7 +3730,7 @@ Events: <none>` + "\n",
|
|||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3738,7 +3746,7 @@ Annotations: <none>
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"Spec.DefaultBackend.Resource & IngressRule.HTTP.Paths.Backend.Resource v1": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3762,7 +3770,7 @@ Events: <none>` + "\n",
|
|||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3778,7 +3786,7 @@ Annotations: <none>
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"Spec.DefaultBackend.Resource & IngressRule.HTTP.Paths.Backend.Service v1": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3802,7 +3810,7 @@ Events: <none>` + "\n",
|
|||
},
|
||||
},
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3818,7 +3826,7 @@ Annotations: <none>
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"DefaultBackend": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3827,7 +3835,7 @@ Events: <none>` + "\n",
|
|||
DefaultBackend: &backendV1,
|
||||
IngressClassName: &ingresClassName,
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3843,7 +3851,7 @@ Events: <none>
|
|||
`,
|
||||
},
|
||||
"EmptyBackend": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3851,7 +3859,7 @@ Events: <none>
|
|||
Spec: networkingv1.IngressSpec{
|
||||
IngressClassName: &ingresClassName,
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3867,7 +3875,7 @@ Events: <none>
|
|||
`,
|
||||
},
|
||||
"EmptyIngressClassName": {
|
||||
input: fake.NewClientset(&networkingv1.Ingress{
|
||||
input: &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -3875,7 +3883,7 @@ Events: <none>
|
|||
Spec: networkingv1.IngressSpec{
|
||||
DefaultBackend: &backendV1,
|
||||
},
|
||||
}),
|
||||
},
|
||||
output: `Name: bar
|
||||
Labels: <none>
|
||||
Namespace: foo
|
||||
|
|
@ -3894,7 +3902,8 @@ Events: <none>
|
|||
|
||||
for name, test := range tests {
|
||||
t.Run(name, func(t *testing.T) {
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: test.input}
|
||||
client := fake.NewClientset(test.input)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: client}
|
||||
i := IngressDescriber{c}
|
||||
out, err := i.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -3920,7 +3929,7 @@ func TestDescribeIngressV1(t *testing.T) {
|
|||
},
|
||||
}
|
||||
|
||||
fakeClient := fake.NewClientset(&networkingv1.Ingress{
|
||||
ingress := &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Labels: map[string]string{
|
||||
|
|
@ -3947,7 +3956,8 @@ func TestDescribeIngressV1(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fakeClient := fake.NewClientset(ingress)
|
||||
i := IngressDescriber{fakeClient}
|
||||
out, err := i.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -3966,7 +3976,7 @@ func TestDescribeIngressV1(t *testing.T) {
|
|||
func TestDescribeStorageClass(t *testing.T) {
|
||||
reclaimPolicy := corev1.PersistentVolumeReclaimRetain
|
||||
bindingMode := storagev1.VolumeBindingMode("bindingmode")
|
||||
f := fake.NewClientset(&storagev1.StorageClass{
|
||||
storageClass := &storagev1.StorageClass{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo",
|
||||
ResourceVersion: "4",
|
||||
|
|
@ -4007,7 +4017,8 @@ func TestDescribeStorageClass(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
f := fake.NewClientset(storageClass)
|
||||
s := StorageClassDescriber{f}
|
||||
out, err := s.Describe("", "foo", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -4039,7 +4050,7 @@ Parameters: param1=value1,param2=value2
|
|||
Events: <none>
|
||||
`
|
||||
|
||||
f := fake.NewClientset(&storagev1.VolumeAttributesClass{
|
||||
volumeAttributesClass := &storagev1.VolumeAttributesClass{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo",
|
||||
ResourceVersion: "4",
|
||||
|
|
@ -4052,7 +4063,8 @@ Events: <none>
|
|||
"param1": "value1",
|
||||
"param2": "value2",
|
||||
},
|
||||
})
|
||||
}
|
||||
f := fake.NewClientset(volumeAttributesClass)
|
||||
s := VolumeAttributesClassDescriber{f}
|
||||
out, err := s.Describe("", "foo", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -4065,7 +4077,7 @@ Events: <none>
|
|||
|
||||
func TestDescribeCSINode(t *testing.T) {
|
||||
limit := ptr.To[int32](2)
|
||||
f := fake.NewClientset(&storagev1.CSINode{
|
||||
csiNode := &storagev1.CSINode{
|
||||
ObjectMeta: metav1.ObjectMeta{Name: "foo"},
|
||||
Spec: storagev1.CSINodeSpec{
|
||||
Drivers: []storagev1.CSINodeDriver{
|
||||
|
|
@ -4080,7 +4092,8 @@ func TestDescribeCSINode(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
f := fake.NewClientset(csiNode)
|
||||
s := CSINodeDescriber{f}
|
||||
out, err := s.Describe("", "foo", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -4097,7 +4110,7 @@ func TestDescribeCSINode(t *testing.T) {
|
|||
|
||||
func TestDescribePodDisruptionBudgetV1(t *testing.T) {
|
||||
minAvailable := intstr.FromInt32(22)
|
||||
f := fake.NewClientset(&policyv1.PodDisruptionBudget{
|
||||
podDisruptionBudget := &policyv1.PodDisruptionBudget{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Namespace: "ns1",
|
||||
Name: "pdb1",
|
||||
|
|
@ -4109,7 +4122,8 @@ func TestDescribePodDisruptionBudgetV1(t *testing.T) {
|
|||
Status: policyv1.PodDisruptionBudgetStatus{
|
||||
DisruptionsAllowed: 5,
|
||||
},
|
||||
})
|
||||
}
|
||||
f := fake.NewClientset(podDisruptionBudget)
|
||||
s := PodDisruptionBudgetDescriber{f}
|
||||
out, err := s.Describe("ns1", "pdb1", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -5137,138 +5151,132 @@ func TestDescribeEvents(t *testing.T) {
|
|||
},
|
||||
}
|
||||
|
||||
m := map[string]ResourceDescriber{
|
||||
"DaemonSetDescriber": &DaemonSetDescriber{
|
||||
fake.NewClientset(&appsv1.DaemonSet{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
describerFor := func(name string, clientset *fake.Clientset) ResourceDescriber {
|
||||
m := map[string]ResourceDescriber{
|
||||
"DaemonSetDescriber": &DaemonSetDescriber{clientset},
|
||||
"DeploymentDescriber": &DeploymentDescriber{clientset},
|
||||
"EndpointsDescriber": &EndpointsDescriber{clientset},
|
||||
"EndpointSliceDescriber": &EndpointSliceDescriber{clientset},
|
||||
"JobDescriber": &JobDescriber{clientset},
|
||||
"IngressDescriber": &IngressDescriber{clientset},
|
||||
"NodeDescriber": &NodeDescriber{clientset},
|
||||
"PersistentVolumeDescriber": &PersistentVolumeDescriber{clientset},
|
||||
"PodDescriber": &PodDescriber{clientset},
|
||||
"ReplicaSetDescriber": &ReplicaSetDescriber{clientset},
|
||||
"ReplicationControllerDescriber": &ReplicationControllerDescriber{clientset},
|
||||
"Service": &ServiceDescriber{clientset},
|
||||
"StorageClass": &StorageClassDescriber{clientset},
|
||||
"HorizontalPodAutoscaler": &HorizontalPodAutoscalerDescriber{clientset},
|
||||
"ConfigMap": &ConfigMapDescriber{clientset},
|
||||
}
|
||||
return m[name]
|
||||
}
|
||||
|
||||
m := map[string]runtime.Object{
|
||||
"DaemonSetDescriber": &appsv1.DaemonSet{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"DeploymentDescriber": &DeploymentDescriber{
|
||||
fake.NewClientset(&appsv1.Deployment{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
Spec: appsv1.DeploymentSpec{
|
||||
Replicas: ptr.To[int32](1),
|
||||
Selector: &metav1.LabelSelector{},
|
||||
},
|
||||
}, events),
|
||||
"DeploymentDescriber": &appsv1.Deployment{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
Spec: appsv1.DeploymentSpec{
|
||||
Replicas: ptr.To[int32](1),
|
||||
Selector: &metav1.LabelSelector{},
|
||||
},
|
||||
},
|
||||
"EndpointsDescriber": &EndpointsDescriber{
|
||||
fake.NewClientset(&corev1.Endpoints{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"EndpointsDescriber": &corev1.Endpoints{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"EndpointSliceDescriber": &EndpointSliceDescriber{
|
||||
fake.NewClientset(&discoveryv1.EndpointSlice{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"EndpointSliceDescriber": &discoveryv1.EndpointSlice{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"JobDescriber": &JobDescriber{
|
||||
fake.NewClientset(&batchv1.Job{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"JobDescriber": &batchv1.Job{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"IngressDescriber": &IngressDescriber{
|
||||
fake.NewClientset(&networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"IngressDescriber": &networkingv1.Ingress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"NodeDescriber": &NodeDescriber{
|
||||
fake.NewClientset(&corev1.Node{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
},
|
||||
}, events),
|
||||
"NodeDescriber": &corev1.Node{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
},
|
||||
},
|
||||
"PersistentVolumeDescriber": &PersistentVolumeDescriber{
|
||||
fake.NewClientset(&corev1.PersistentVolume{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
},
|
||||
}, events),
|
||||
"PersistentVolumeDescriber": &corev1.PersistentVolume{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
},
|
||||
},
|
||||
"PodDescriber": &PodDescriber{
|
||||
fake.NewClientset(&corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"PodDescriber": &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"ReplicaSetDescriber": &ReplicaSetDescriber{
|
||||
fake.NewClientset(&appsv1.ReplicaSet{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
Spec: appsv1.ReplicaSetSpec{
|
||||
Replicas: ptr.To[int32](1),
|
||||
},
|
||||
}, events),
|
||||
"ReplicaSetDescriber": &appsv1.ReplicaSet{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
Spec: appsv1.ReplicaSetSpec{
|
||||
Replicas: ptr.To[int32](1),
|
||||
},
|
||||
},
|
||||
"ReplicationControllerDescriber": &ReplicationControllerDescriber{
|
||||
fake.NewClientset(&corev1.ReplicationController{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
Spec: corev1.ReplicationControllerSpec{
|
||||
Replicas: ptr.To[int32](1),
|
||||
},
|
||||
}, events),
|
||||
"ReplicationControllerDescriber": &corev1.ReplicationController{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
Spec: corev1.ReplicationControllerSpec{
|
||||
Replicas: ptr.To[int32](1),
|
||||
},
|
||||
},
|
||||
"Service": &ServiceDescriber{
|
||||
fake.NewClientset(&corev1.Service{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"Service": &corev1.Service{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"StorageClass": &StorageClassDescriber{
|
||||
fake.NewClientset(&storagev1.StorageClass{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
},
|
||||
}, events),
|
||||
"StorageClass": &storagev1.StorageClass{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
},
|
||||
},
|
||||
"HorizontalPodAutoscaler": &HorizontalPodAutoscalerDescriber{
|
||||
fake.NewClientset(&autoscalingv2.HorizontalPodAutoscaler{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"HorizontalPodAutoscaler": &autoscalingv2.HorizontalPodAutoscaler{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
"ConfigMap": &ConfigMapDescriber{
|
||||
fake.NewClientset(&corev1.ConfigMap{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
}, events),
|
||||
"ConfigMap": &corev1.ConfigMap{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
for name, d := range m {
|
||||
for name, obj := range m {
|
||||
t.Run(name, func(t *testing.T) {
|
||||
clientset := fake.NewClientset(obj, events)
|
||||
d := describerFor(name, clientset)
|
||||
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error for %q: %v", name, err)
|
||||
|
|
@ -5432,7 +5440,7 @@ URL: http://localhost
|
|||
}
|
||||
|
||||
func TestDescribeResourceQuota(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.ResourceQuota{
|
||||
resourceQuota := &corev1.ResourceQuota{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -5455,7 +5463,8 @@ func TestDescribeResourceQuota(t *testing.T) {
|
|||
corev1.ResourceName(corev1.ResourceRequestsMemory): resource.MustParse("1000Ki"),
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(resourceQuota)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := ResourceQuotaDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -5480,7 +5489,7 @@ Parameters:
|
|||
Kind: ConfigMap
|
||||
Name: example-parameters` + "\n"
|
||||
|
||||
input := fake.NewClientset(&networkingv1.IngressClass{
|
||||
ingressClass := &networkingv1.IngressClass{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "example-class",
|
||||
},
|
||||
|
|
@ -5492,7 +5501,8 @@ Parameters:
|
|||
Name: "example-parameters",
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
input := fake.NewClientset(ingressClass)
|
||||
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: input}
|
||||
d := IngressClassDescriber{c}
|
||||
|
|
@ -5563,7 +5573,7 @@ Spec:
|
|||
port82 := intstr.FromInt32(82)
|
||||
protoTCP := corev1.ProtocolTCP
|
||||
|
||||
versionedFake := fake.NewClientset(&networkingv1.NetworkPolicy{
|
||||
networkPolicy := &networkingv1.NetworkPolicy{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "network-policy-1",
|
||||
Namespace: "default",
|
||||
|
|
@ -5698,7 +5708,8 @@ Spec:
|
|||
},
|
||||
PolicyTypes: []networkingv1.PolicyType{networkingv1.PolicyTypeIngress, networkingv1.PolicyTypeEgress},
|
||||
},
|
||||
})
|
||||
}
|
||||
versionedFake := fake.NewClientset(networkPolicy)
|
||||
d := NetworkPolicyDescriber{versionedFake}
|
||||
out, err := d.Describe("default", "network-policy-1", DescriberSettings{})
|
||||
if err != nil {
|
||||
|
|
@ -5748,7 +5759,7 @@ Spec:
|
|||
port82 := intstr.FromInt32(82)
|
||||
protoTCP := corev1.ProtocolTCP
|
||||
|
||||
versionedFake := fake.NewClientset(&networkingv1.NetworkPolicy{
|
||||
networkPolicy := &networkingv1.NetworkPolicy{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "network-policy-1",
|
||||
Namespace: "default",
|
||||
|
|
@ -5825,7 +5836,8 @@ Spec:
|
|||
},
|
||||
PolicyTypes: []networkingv1.PolicyType{networkingv1.PolicyTypeIngress},
|
||||
},
|
||||
})
|
||||
}
|
||||
versionedFake := fake.NewClientset(networkPolicy)
|
||||
d := NetworkPolicyDescriber{versionedFake}
|
||||
out, err := d.Describe("default", "network-policy-1", DescriberSettings{})
|
||||
if err != nil {
|
||||
|
|
@ -5876,7 +5888,7 @@ Spec:
|
|||
port82 := intstr.FromInt32(82)
|
||||
protoTCP := corev1.ProtocolTCP
|
||||
|
||||
versionedFake := fake.NewClientset(&networkingv1.NetworkPolicy{
|
||||
networkPolicy := &networkingv1.NetworkPolicy{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "network-policy-1",
|
||||
Namespace: "default",
|
||||
|
|
@ -5953,7 +5965,8 @@ Spec:
|
|||
},
|
||||
PolicyTypes: []networkingv1.PolicyType{networkingv1.PolicyTypeIngress, networkingv1.PolicyTypeEgress},
|
||||
},
|
||||
})
|
||||
}
|
||||
versionedFake := fake.NewClientset(networkPolicy)
|
||||
d := NetworkPolicyDescriber{versionedFake}
|
||||
out, err := d.Describe("default", "network-policy-1", DescriberSettings{})
|
||||
if err != nil {
|
||||
|
|
@ -6019,7 +6032,7 @@ Spec:
|
|||
port82 := int32(82)
|
||||
protoTCP := corev1.ProtocolTCP
|
||||
|
||||
versionedFake := fake.NewClientset(&networkingv1.NetworkPolicy{
|
||||
networkPolicy := &networkingv1.NetworkPolicy{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "network-policy-1",
|
||||
Namespace: "default",
|
||||
|
|
@ -6152,7 +6165,8 @@ Spec:
|
|||
},
|
||||
PolicyTypes: []networkingv1.PolicyType{networkingv1.PolicyTypeIngress, networkingv1.PolicyTypeEgress},
|
||||
},
|
||||
})
|
||||
}
|
||||
versionedFake := fake.NewClientset(networkPolicy)
|
||||
d := NetworkPolicyDescriber{versionedFake}
|
||||
out, err := d.Describe("default", "network-policy-1", DescriberSettings{})
|
||||
if err != nil {
|
||||
|
|
@ -6164,7 +6178,7 @@ Spec:
|
|||
}
|
||||
|
||||
func TestDescribeServiceAccount(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.ServiceAccount{
|
||||
serviceAccount := &corev1.ServiceAccount{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -6179,7 +6193,8 @@ func TestDescribeServiceAccount(t *testing.T) {
|
|||
Name: "test-local-ref",
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(serviceAccount)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := ServiceAccountDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -6503,7 +6518,7 @@ func TestDescribeNodeWithSidecar(t *testing.T) {
|
|||
func TestDescribeStatefulSet(t *testing.T) {
|
||||
var partition int32 = 2672
|
||||
var replicas int32 = 1
|
||||
fake := fake.NewClientset(&appsv1.StatefulSet{
|
||||
statefulSet := &appsv1.StatefulSet{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -6525,7 +6540,8 @@ func TestDescribeStatefulSet(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(statefulSet)
|
||||
d := StatefulSetDescriber{fake}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -6543,7 +6559,7 @@ func TestDescribeStatefulSet(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribeDaemonSet(t *testing.T) {
|
||||
fake := fake.NewClientset(&appsv1.DaemonSet{
|
||||
daemonSet := &appsv1.DaemonSet{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -6560,7 +6576,8 @@ func TestDescribeDaemonSet(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(daemonSet)
|
||||
d := DaemonSetDescriber{fake}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -6581,7 +6598,7 @@ func TestDescribeEndpointSlice(t *testing.T) {
|
|||
protocolTCP := corev1.ProtocolTCP
|
||||
port80 := int32(80)
|
||||
|
||||
input := fake.NewClientset(&discoveryv1.EndpointSlice{
|
||||
endpointSlice := &discoveryv1.EndpointSlice{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
Namespace: "bar",
|
||||
|
|
@ -6607,7 +6624,8 @@ func TestDescribeEndpointSlice(t *testing.T) {
|
|||
Port: &port80,
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
input := fake.NewClientset(endpointSlice)
|
||||
|
||||
output := `Name: foo.123
|
||||
Namespace: bar
|
||||
|
|
@ -6650,18 +6668,18 @@ Events: <none>` + "\n"
|
|||
func TestDescribeServiceCIDR(t *testing.T) {
|
||||
|
||||
testcases := map[string]struct {
|
||||
input *fake.Clientset
|
||||
input runtime.Object
|
||||
output string
|
||||
}{
|
||||
"ServiceCIDR v1beta1": {
|
||||
input: fake.NewClientset(&networkingv1beta1.ServiceCIDR{
|
||||
input: &networkingv1beta1.ServiceCIDR{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
Spec: networkingv1beta1.ServiceCIDRSpec{
|
||||
CIDRs: []string{"10.1.0.0/16", "fd00:1:1::/64"},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6670,14 +6688,14 @@ CIDRs: 10.1.0.0/16, fd00:1:1::/64
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"ServiceCIDR v1beta1 IPv4": {
|
||||
input: fake.NewClientset(&networkingv1beta1.ServiceCIDR{
|
||||
input: &networkingv1beta1.ServiceCIDR{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
Spec: networkingv1beta1.ServiceCIDRSpec{
|
||||
CIDRs: []string{"10.1.0.0/16"},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6686,14 +6704,14 @@ CIDRs: 10.1.0.0/16
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"ServiceCIDR v1beta1 IPv6": {
|
||||
input: fake.NewClientset(&networkingv1beta1.ServiceCIDR{
|
||||
input: &networkingv1beta1.ServiceCIDR{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
Spec: networkingv1beta1.ServiceCIDRSpec{
|
||||
CIDRs: []string{"fd00:1:1::/64"},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6702,14 +6720,14 @@ CIDRs: fd00:1:1::/64
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"ServiceCIDR v1": {
|
||||
input: fake.NewClientset(&networkingv1.ServiceCIDR{
|
||||
input: &networkingv1.ServiceCIDR{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
Spec: networkingv1.ServiceCIDRSpec{
|
||||
CIDRs: []string{"10.1.0.0/16", "fd00:1:1::/64"},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6718,14 +6736,14 @@ CIDRs: 10.1.0.0/16, fd00:1:1::/64
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"ServiceCIDR v1 IPv4": {
|
||||
input: fake.NewClientset(&networkingv1.ServiceCIDR{
|
||||
input: &networkingv1.ServiceCIDR{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
Spec: networkingv1.ServiceCIDRSpec{
|
||||
CIDRs: []string{"10.1.0.0/16"},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6734,14 +6752,14 @@ CIDRs: 10.1.0.0/16
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"ServiceCIDR v1 IPv6": {
|
||||
input: fake.NewClientset(&networkingv1.ServiceCIDR{
|
||||
input: &networkingv1.ServiceCIDR{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
Spec: networkingv1.ServiceCIDRSpec{
|
||||
CIDRs: []string{"fd00:1:1::/64"},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6753,7 +6771,8 @@ Events: <none>` + "\n",
|
|||
|
||||
for name, tc := range testcases {
|
||||
t.Run(name, func(t *testing.T) {
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: tc.input}
|
||||
client := fake.NewClientset(tc.input)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: client}
|
||||
d := ServiceCIDRDescriber{c}
|
||||
out, err := d.Describe("bar", "foo.123", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -6769,11 +6788,11 @@ Events: <none>` + "\n",
|
|||
func TestDescribeIPAddress(t *testing.T) {
|
||||
|
||||
testcases := map[string]struct {
|
||||
input *fake.Clientset
|
||||
input runtime.Object
|
||||
output string
|
||||
}{
|
||||
"IPAddress v1beta1": {
|
||||
input: fake.NewClientset(&networkingv1beta1.IPAddress{
|
||||
input: &networkingv1beta1.IPAddress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
|
|
@ -6785,7 +6804,7 @@ func TestDescribeIPAddress(t *testing.T) {
|
|||
Name: "myname",
|
||||
},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6798,7 +6817,7 @@ Parent Reference:
|
|||
Events: <none>` + "\n",
|
||||
},
|
||||
"IPAddress v1": {
|
||||
input: fake.NewClientset(&networkingv1.IPAddress{
|
||||
input: &networkingv1.IPAddress{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "foo.123",
|
||||
},
|
||||
|
|
@ -6810,7 +6829,7 @@ Events: <none>` + "\n",
|
|||
Name: "myname",
|
||||
},
|
||||
},
|
||||
}),
|
||||
},
|
||||
|
||||
output: `Name: foo.123
|
||||
Labels: <none>
|
||||
|
|
@ -6826,7 +6845,8 @@ Events: <none>` + "\n",
|
|||
|
||||
for name, tc := range testcases {
|
||||
t.Run(name, func(t *testing.T) {
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: tc.input}
|
||||
client := fake.NewClientset(tc.input)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: client}
|
||||
d := IPAddressDescriber{c}
|
||||
out, err := d.Describe("bar", "foo.123", DescriberSettings{ShowEvents: true})
|
||||
if err != nil {
|
||||
|
|
@ -6930,13 +6950,14 @@ func TestControllerRef(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribeTerminalEscape(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.ConfigMap{
|
||||
configMap := &corev1.ConfigMap{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "mycm",
|
||||
Namespace: "foo",
|
||||
Annotations: map[string]string{"annotation1": "terminal escape: \x1b"},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(configMap)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := ConfigMapDescriber{c}
|
||||
out, err := d.Describe("foo", "mycm", DescriberSettings{ShowEvents: true})
|
||||
|
|
@ -7090,7 +7111,7 @@ func TestDescribeSeccompProfile(t *testing.T) {
|
|||
}
|
||||
|
||||
func TestDescribeProjectedVolumesOptionalSecret(t *testing.T) {
|
||||
fake := fake.NewClientset(&corev1.Pod{
|
||||
pod := &corev1.Pod{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Name: "bar",
|
||||
Namespace: "foo",
|
||||
|
|
@ -7116,7 +7137,8 @@ func TestDescribeProjectedVolumesOptionalSecret(t *testing.T) {
|
|||
},
|
||||
},
|
||||
},
|
||||
})
|
||||
}
|
||||
fake := fake.NewClientset(pod)
|
||||
c := &describeClient{T: t, Namespace: "foo", Interface: fake}
|
||||
d := PodDescriber{c}
|
||||
out, err := d.Describe("foo", "bar", DescriberSettings{ShowEvents: true})
|
||||
|
|
|
|||
Loading…
Reference in a new issue