diff --git a/pkg/chartutil/values_test.go b/pkg/chartutil/values_test.go index 089afc8ed..43aa72189 100644 --- a/pkg/chartutil/values_test.go +++ b/pkg/chartutil/values_test.go @@ -556,119 +556,3 @@ chapter: } } } - -func TestReadSchema(t *testing.T) { - schemaTest := `{ - "$schema": "http://json-schema.org/draft-07/schema#", - "properties": { - "addresses": { - "description": "List of addresses", - "items": { - "properties": { - "city": { - "type": "string" - }, - "number": { - "type": "number" - }, - "street": { - "type": "string" - } - }, - "type": "object" - }, - "type": "array" - }, - "age": { - "description": "Age", - "minimum": 0, - "type": "integer" - }, - "employmentInfo": { - "properties": { - "salary": { - "minimum": 0, - "type": "number" - }, - "title": { - "type": "string" - } - }, - "required": [ - "salary" - ], - "type": "object" - }, - "firstname": { - "description": "First name", - "type": "string" - }, - "lastname": { - "type": "string" - }, - "likesCoffee": { - "type": "boolean" - }, - "phoneNumbers": { - "items": { - "type": "string" - }, - "type": "array" - } - }, - "required": [ - "firstname", - "lastname", - "addresses", - "employmentInfo" - ], - "title": "Values", - "type": "object" -} -` - data, err := ReadValues([]byte(schemaTest)) - if err != nil { - t.Fatalf("Error parsing bytes: %s", err) - } - matchSchema(t, data) -} - -func matchSchema(t *testing.T, data map[string]interface{}) { - if o, err := ttpl("{{len .required}}", data); err != nil { - t.Errorf("len required: %s", err) - } else if o != "4" { - t.Errorf("Expected length of .required to be 4, got %s", o) - } - - assertEqualProperty(t, ".title", "Values", data) - assertEqualProperty(t, ".type", "object", data) - assertEqualProperty(t, ".properties.firstname.description", "First name", data) - assertEqualProperty(t, ".properties.firstname.type", "string", data) - assertEqualProperty(t, ".properties.lastname.type", "string", data) - assertEqualProperty(t, ".properties.likesCoffee.type", "boolean", data) - assertEqualProperty(t, ".properties.age.description", "Age", data) - assertEqualProperty(t, ".properties.age.type", "integer", data) - assertEqualProperty(t, ".properties.age.minimum", "0", data) - assertEqualProperty(t, ".properties.employmentInfo.type", "object", data) - assertEqualProperty(t, ".properties.employmentInfo.properties.salary.type", "number", data) - assertEqualProperty(t, ".properties.employmentInfo.properties.salary.minimum", "0", data) - assertEqualProperty(t, ".properties.employmentInfo.properties.title.type", "string", data) - assertEqualProperty(t, ".properties.employmentInfo.required", "[salary]", data) - assertEqualProperty(t, ".properties.addresses.description", "List of addresses", data) - assertEqualProperty(t, ".properties.addresses.type", "array", data) - assertEqualProperty(t, ".properties.addresses.items.type", "object", data) - assertEqualProperty(t, ".properties.addresses.items.properties.city.type", "string", data) - assertEqualProperty(t, ".properties.addresses.items.properties.street.type", "string", data) - assertEqualProperty(t, ".properties.addresses.items.properties.number.type", "number", data) - assertEqualProperty(t, ".properties.phoneNumbers.type", "array", data) - assertEqualProperty(t, ".properties.phoneNumbers.items.type", "string", data) - assertEqualProperty(t, ".required", "[firstname lastname addresses employmentInfo]", data) -} - -func assertEqualProperty(t *testing.T, property, expected string, data map[string]interface{}) { - if o, err := ttpl("{{"+property+"}}", data); err != nil { - t.Errorf("%s: %s", property, err) - } else if o != expected { - t.Errorf("Expected %s to be %s, got %s", property, expected, o) - } -}