Skip to content

Commit 83b5e4f

Browse files
committed
fixed coverage
1 parent 9e5403c commit 83b5e4f

1 file changed

Lines changed: 57 additions & 0 deletions

File tree

utils/utils_test.go

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import (
1010

1111
"github.com/pb33f/jsonpath/pkg/jsonpath"
1212
"github.com/stretchr/testify/assert"
13+
"github.com/stretchr/testify/require"
1314
"go.yaml.in/yaml/v4"
1415
)
1516

@@ -1604,6 +1605,62 @@ func TestFindKeyNodeHelpers_BareMergeNodeDoesNotPanic(t *testing.T) {
16041605
})
16051606
}
16061607

1608+
func TestFindKeyNodeHelpers_MergeKeyWithoutAliasDoesNotPanic(t *testing.T) {
1609+
nodes := []*yaml.Node{
1610+
{Kind: yaml.ScalarNode, Tag: "!!merge", Value: "<<"},
1611+
{Kind: yaml.ScalarNode, Tag: "!!str", Value: "not-an-alias"},
1612+
}
1613+
1614+
assert.NotPanics(t, func() {
1615+
k, v := FindFirstKeyNode("openapi", nodes, 0)
1616+
assert.Nil(t, k)
1617+
assert.Nil(t, v)
1618+
1619+
k, v = FindKeyNodeTop("openapi", nodes)
1620+
assert.Nil(t, k)
1621+
assert.Nil(t, v)
1622+
1623+
k, v = FindKeyNode("openapi", nodes)
1624+
assert.Nil(t, k)
1625+
assert.Nil(t, v)
1626+
1627+
k, l, v := FindKeyNodeFull("openapi", nodes)
1628+
assert.Nil(t, k)
1629+
assert.Nil(t, l)
1630+
assert.Nil(t, v)
1631+
1632+
k, l, v = FindKeyNodeFullTop("openapi", nodes)
1633+
assert.Nil(t, k)
1634+
assert.Nil(t, l)
1635+
assert.Nil(t, v)
1636+
})
1637+
}
1638+
1639+
func TestLeadingMergeContent_NilMergeValueReturnsOriginalNodes(t *testing.T) {
1640+
nodes := []*yaml.Node{
1641+
{Kind: yaml.ScalarNode, Tag: "!!merge", Value: "<<"},
1642+
nil,
1643+
}
1644+
1645+
result := leadingMergeContent(nodes)
1646+
assert.Equal(t, nodes, result)
1647+
assert.Nil(t, result[1])
1648+
}
1649+
1650+
func TestFindKeyNodeFullTop_OddLengthNodesReturnsKeyNode(t *testing.T) {
1651+
nodes := []*yaml.Node{
1652+
{Kind: yaml.ScalarNode, Tag: "!!str", Value: "openapi"},
1653+
}
1654+
1655+
k, l, v := FindKeyNodeFullTop("openapi", nodes)
1656+
require.NotNil(t, k)
1657+
require.NotNil(t, l)
1658+
require.NotNil(t, v)
1659+
assert.Same(t, nodes[0], k)
1660+
assert.Same(t, nodes[0], l)
1661+
assert.Same(t, nodes[0], v)
1662+
}
1663+
16071664
func TestNodeMerge(t *testing.T) {
16081665
yml := []byte(`openapi: 3.0.3
16091666
any-thing: &anchorH

0 commit comments

Comments
 (0)