Commit bb485466 authored by Kubernetes Submit Queue's avatar Kubernetes Submit Queue Committed by GitHub

Merge pull request #49359 from wanghaoran1988/convert_to_table_printer

Automatic merge from submit-queue Add some table printer **What this PR does / why we need it**: Add table printer for Service resource **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: related to https://github.com/kubernetes/kubernetes/issues/48820 **Special notes for your reviewer**: **Release note**: ``` None ```
parents 427dfd5c 4d5417ad
...@@ -89,6 +89,7 @@ go_library( ...@@ -89,6 +89,7 @@ go_library(
"//pkg/util/slice:go_default_library", "//pkg/util/slice:go_default_library",
"//vendor/github.com/fatih/camelcase:go_default_library", "//vendor/github.com/fatih/camelcase:go_default_library",
"//vendor/github.com/golang/glog:go_default_library", "//vendor/github.com/golang/glog:go_default_library",
"//vendor/k8s.io/api/apps/v1beta1:go_default_library",
"//vendor/k8s.io/api/batch/v1:go_default_library", "//vendor/k8s.io/api/batch/v1:go_default_library",
"//vendor/k8s.io/api/batch/v2alpha1:go_default_library", "//vendor/k8s.io/api/batch/v2alpha1:go_default_library",
"//vendor/k8s.io/api/core/v1:go_default_library", "//vendor/k8s.io/api/core/v1:go_default_library",
......
...@@ -1094,10 +1094,14 @@ func TestPrintHunmanReadableIngressWithColumnLabels(t *testing.T) { ...@@ -1094,10 +1094,14 @@ func TestPrintHunmanReadableIngressWithColumnLabels(t *testing.T) {
}, },
}, },
} }
buff := bytes.Buffer{} buff := bytes.NewBuffer([]byte{})
printIngress(&ingress, &buff, printers.PrintOptions{ table, err := printers.NewTablePrinter().With(AddHandlers).PrintTable(&ingress, printers.PrintOptions{ColumnLabels: []string{"app_name"}})
ColumnLabels: []string{"app_name"}, if err != nil {
}) t.Fatal(err)
}
if err := printers.PrintTable(table, buff, printers.PrintOptions{NoHeaders: true}); err != nil {
t.Fatal(err)
}
output := string(buff.Bytes()) output := string(buff.Bytes())
appName := ingress.ObjectMeta.Labels["app_name"] appName := ingress.ObjectMeta.Labels["app_name"]
if !strings.Contains(output, appName) { if !strings.Contains(output, appName) {
...@@ -1219,8 +1223,14 @@ func TestPrintHumanReadableService(t *testing.T) { ...@@ -1219,8 +1223,14 @@ func TestPrintHumanReadableService(t *testing.T) {
for _, svc := range tests { for _, svc := range tests {
for _, wide := range []bool{false, true} { for _, wide := range []bool{false, true} {
buff := bytes.Buffer{} buff := bytes.NewBuffer([]byte{})
printService(&svc, &buff, printers.PrintOptions{Wide: wide}) table, err := printers.NewTablePrinter().With(AddHandlers).PrintTable(&svc, printers.PrintOptions{Wide: wide})
if err != nil {
t.Fatal(err)
}
if err := printers.PrintTable(table, buff, printers.PrintOptions{NoHeaders: true}); err != nil {
t.Fatal(err)
}
output := string(buff.Bytes()) output := string(buff.Bytes())
ip := svc.Spec.ClusterIP ip := svc.Spec.ClusterIP
if !strings.Contains(output, ip) { if !strings.Contains(output, ip) {
...@@ -2594,7 +2604,13 @@ func TestPrintService(t *testing.T) { ...@@ -2594,7 +2604,13 @@ func TestPrintService(t *testing.T) {
buf := bytes.NewBuffer([]byte{}) buf := bytes.NewBuffer([]byte{})
for _, test := range tests { for _, test := range tests {
printService(&test.service, buf, printers.PrintOptions{}) table, err := printers.NewTablePrinter().With(AddHandlers).PrintTable(&test.service, printers.PrintOptions{})
if err != nil {
t.Fatal(err)
}
if err := printers.PrintTable(table, buf, printers.PrintOptions{NoHeaders: true}); err != nil {
t.Fatal(err)
}
// We ignore time // We ignore time
if buf.String() != test.expect { if buf.String() != test.expect {
t.Fatalf("Expected: %s, but got: %s", test.expect, buf.String()) t.Fatalf("Expected: %s, but got: %s", test.expect, buf.String())
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment