mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-24 12:15:52 +00:00
Move template printer error test to correct location template_test.go
This commit is contained in:
parent
57259fa419
commit
6660937139
@ -263,22 +263,10 @@ func TestPrinters(t *testing.T) {
|
||||
om := func(name string) metav1.ObjectMeta { return metav1.ObjectMeta{Name: name} }
|
||||
|
||||
var (
|
||||
err error
|
||||
templatePrinter printers.ResourcePrinter
|
||||
templatePrinter2 printers.ResourcePrinter
|
||||
jsonpathPrinter printers.ResourcePrinter
|
||||
err error
|
||||
jsonpathPrinter printers.ResourcePrinter
|
||||
)
|
||||
|
||||
templatePrinter, err = genericprinters.NewGoTemplatePrinter([]byte("{{.name}}"))
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
templatePrinter2, err = genericprinters.NewGoTemplatePrinter([]byte("{{len .items}}"))
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
jsonpathPrinter, err = genericprinters.NewJSONPathPrinter("{.metadata.name}")
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -286,11 +274,9 @@ func TestPrinters(t *testing.T) {
|
||||
|
||||
genericPrinters := map[string]printers.ResourcePrinter{
|
||||
// TODO(juanvallejo): move "generic printer" tests to pkg/kubectl/genericclioptions/printers
|
||||
"json": genericprinters.NewTypeSetter(legacyscheme.Scheme).ToPrinter(&genericprinters.JSONPrinter{}),
|
||||
"yaml": genericprinters.NewTypeSetter(legacyscheme.Scheme).ToPrinter(&genericprinters.YAMLPrinter{}),
|
||||
"template": templatePrinter,
|
||||
"template2": templatePrinter2,
|
||||
"jsonpath": jsonpathPrinter,
|
||||
"json": genericprinters.NewTypeSetter(legacyscheme.Scheme).ToPrinter(&genericprinters.JSONPrinter{}),
|
||||
"yaml": genericprinters.NewTypeSetter(legacyscheme.Scheme).ToPrinter(&genericprinters.YAMLPrinter{}),
|
||||
"jsonpath": jsonpathPrinter,
|
||||
}
|
||||
objects := map[string]runtime.Object{
|
||||
"pod": &v1.Pod{ObjectMeta: om("pod")},
|
||||
@ -304,8 +290,7 @@ func TestPrinters(t *testing.T) {
|
||||
}
|
||||
// map of printer name to set of objects it should fail on.
|
||||
expectedErrors := map[string]sets.String{
|
||||
"template2": sets.NewString("pod", "emptyPodList", "endpoints"),
|
||||
"jsonpath": sets.NewString("emptyPodList", "nonEmptyPodList", "endpoints"),
|
||||
"jsonpath": sets.NewString("emptyPodList", "nonEmptyPodList", "endpoints"),
|
||||
}
|
||||
|
||||
for pName, p := range genericPrinters {
|
||||
|
@ -242,3 +242,30 @@ func TestTemplatePanic(t *testing.T) {
|
||||
t.Errorf("no debugging info was printed")
|
||||
}
|
||||
}
|
||||
|
||||
func TestTemplateErrors(t *testing.T) {
|
||||
|
||||
templatePrinter, err := NewGoTemplatePrinter([]byte("{{len .items}}"))
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
// Template printer should fail on these resources.
|
||||
om := func(name string) metav1.ObjectMeta { return metav1.ObjectMeta{Name: name} }
|
||||
objects := []runtime.Object{
|
||||
&v1.Pod{ObjectMeta: om("pod")},
|
||||
&v1.PodList{},
|
||||
&v1.Endpoints{
|
||||
Subsets: []v1.EndpointSubset{{
|
||||
Addresses: []v1.EndpointAddress{{IP: "127.0.0.1"}, {IP: "localhost"}},
|
||||
Ports: []v1.EndpointPort{{Port: 8080}},
|
||||
}}},
|
||||
}
|
||||
|
||||
for _, obj := range objects {
|
||||
b := &bytes.Buffer{}
|
||||
if err := templatePrinter.PrintObj(obj, b); err == nil {
|
||||
t.Errorf("Expected template printer error; received none")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user