mirror of
https://github.com/LukeHagar/libopenapi.git
synced 2025-12-07 04:20:14 +00:00
@@ -296,6 +296,9 @@ func FindKeyNode(key string, nodes []*yaml.Node) (keyNode *yaml.Node, valueNode
|
||||
func FindKeyNodeFull(key string, nodes []*yaml.Node) (keyNode *yaml.Node, labelNode *yaml.Node, valueNode *yaml.Node) {
|
||||
for i := range nodes {
|
||||
if i%2 == 0 && key == nodes[i].Value {
|
||||
if i+1 >= len(nodes) {
|
||||
return nodes[i], nodes[i], nodes[i]
|
||||
}
|
||||
return nodes[i], nodes[i], nodes[i+1] // next node is what we need.
|
||||
}
|
||||
}
|
||||
|
||||
@@ -386,6 +386,17 @@ func TestFindKeyNodeFull(t *testing.T) {
|
||||
assert.Equal(t, "paste", e.Value)
|
||||
}
|
||||
|
||||
func TestFindKeyNodeFull_NoValue(t *testing.T) {
|
||||
a := &yaml.Node{
|
||||
Value: "openapi",
|
||||
}
|
||||
|
||||
c, d, e := FindKeyNodeFull("openapi", []*yaml.Node{a})
|
||||
assert.Equal(t, "openapi", c.Value)
|
||||
assert.Equal(t, "openapi", d.Value)
|
||||
assert.Equal(t, "openapi", e.Value)
|
||||
}
|
||||
|
||||
func TestFindKeyNodeFull_MapValueIsLastNode(t *testing.T) {
|
||||
f := &yaml.Node{
|
||||
Value: "cheese",
|
||||
|
||||
Reference in New Issue
Block a user