12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- /*
- 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 explain
- import (
- "bytes"
- "testing"
- "k8s.io/apimachinery/pkg/runtime/schema"
- )
- func TestFields(t *testing.T) {
- schema := resources.LookupResource(schema.GroupVersionKind{
- Group: "",
- Version: "v1",
- Kind: "OneKind",
- })
- if schema == nil {
- t.Fatal("Couldn't find schema v1.OneKind")
- }
- want := `field1 <Object> -required-
- Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla ut lacus ac
- enim vulputate imperdiet ac accumsan risus. Integer vel accumsan lectus.
- Praesent tempus nulla id tortor luctus, quis varius nulla laoreet. Ut orci
- nisi, suscipit id velit sed, blandit eleifend turpis. Curabitur tempus ante at
- lectus viverra, a mattis augue euismod. Morbi quam ligula, porttitor sit amet
- lacus non, interdum pulvinar tortor. Praesent accumsan risus et ipsum dictum,
- vel ullamcorper lorem egestas.
- field2 <[]map[string]string>
- This is an array of object of PrimitiveDef
- `
- buf := bytes.Buffer{}
- f := Formatter{
- Writer: &buf,
- Wrap: 80,
- }
- s, err := LookupSchemaForField(schema, []string{})
- if err != nil {
- t.Fatalf("Invalid path %v: %v", []string{}, err)
- }
- if err := (fieldsPrinterBuilder{Recursive: false}).BuildFieldsPrinter(&f).PrintFields(s); err != nil {
- t.Fatalf("Failed to print fields: %v", err)
- }
- got := buf.String()
- if got != want {
- t.Errorf("Got:\n%v\nWant:\n%v\n", buf.String(), want)
- }
- }
|