Coverage at 100%.

Model for v2 and v3 has been validated, now to build out a simple high level creation API, as well as port in 3.1 models (I think there are two). and this is ready for heavier testing.
This commit is contained in:
Dave Shanley
2022-09-05 14:39:12 -04:00
parent 0c5574d597
commit 6d21790a98
5 changed files with 68 additions and 8 deletions

View File

@@ -36,12 +36,12 @@ func (t *Tag) GoLow() *low.Tag {
return t.low
}
func (t *Tag) SetName(value string) {
t.GoLow().Name.ValueNode.Value = value
}
func (t *Tag) SetDescription(value string) {
t.GoLow().Description.ValueNode.Value = value
}
//func (t *Tag) SetName(value string) {
// t.GoLow().Name.ValueNode.Value = value
//}
//func (t *Tag) SetDescription(value string) {
// t.GoLow().Description.ValueNode.Value = value
//}
//func (t *Tag) MarshalYAML() (interface{}, error) {
// m := make(map[string]interface{})

View File

@@ -0,0 +1,23 @@
// Copyright 2022 Princess B33f Heavy Industries / Dave Shanley
// SPDX-License-Identifier: MIT
package base
import (
"github.com/stretchr/testify/assert"
"gopkg.in/yaml.v3"
"testing"
)
func TestSchemaProxy_Build(t *testing.T) {
yml := `description: something`
var sch SchemaProxy
var idxNode yaml.Node
_ = yaml.Unmarshal([]byte(yml), &idxNode)
err := sch.Build(&idxNode, nil)
assert.NoError(t, err)
assert.Equal(t, "something", sch.Schema().Description.Value)
}

View File

@@ -24,6 +24,16 @@ func TestFindItemInMap(t *testing.T) {
assert.Equal(t, "pie", FindItemInMap("pizza", v).Value)
}
func TestFindItemInMap_WrongCase(t *testing.T) {
v := make(map[KeyReference[string]]ValueReference[string])
v[KeyReference[string]{
Value: "pizza",
}] = ValueReference[string]{
Value: "pie",
}
assert.Equal(t, "pie", FindItemInMap("PIZZA", v).Value)
}
func TestFindItemInMap_Error(t *testing.T) {
v := make(map[KeyReference[string]]ValueReference[string])
v[KeyReference[string]{

View File

@@ -245,3 +245,30 @@ func TestCheckEnumForDuplicates_FailMultiple(t *testing.T) {
yaml.Unmarshal([]byte(yml), &rootNode)
assert.Len(t, CheckEnumForDuplicates(rootNode.Content[0].Content), 3)
}
func TestExtractSpecInfo_BadVersion_OpenAPI3(t *testing.T) {
yml := `openapi:
should: fail`
_, err := ExtractSpecInfo([]byte(yml))
assert.Error(t, err)
}
func TestExtractSpecInfo_BadVersion_Swagger(t *testing.T) {
yml := `swagger:
should: fail`
_, err := ExtractSpecInfo([]byte(yml))
assert.Error(t, err)
}
func TestExtractSpecInfo_BadVersion_AsyncAPI(t *testing.T) {
yml := `asyncapi:
should: fail`
_, err := ExtractSpecInfo([]byte(yml))
assert.Error(t, err)
}

View File

@@ -38,8 +38,8 @@ tags:
highDoc := high.NewDocument(lowDoc)
highDoc.Info.GoLow().Title.ValueNode.Value = "let's hack this"
highDoc.Tags[0].SetName("We are a new name now")
highDoc.Tags[0].SetDescription("and a new description")
//highDoc.Tags[0].SetName("We are a new name now")
//highDoc.Tags[0].SetDescription("and a new description")
//newTag := lowDoc.AddTag()
//fmt.Println(newTag)