Merge branch 'main' into Baliedge/PIP-2552-consistent-ordering

This commit is contained in:
Tristan Cartledge
2023-11-27 12:06:39 +00:00
219 changed files with 20934 additions and 4697 deletions

View File

@@ -4,6 +4,7 @@
package v3
import (
"context"
"fmt"
"testing"
@@ -66,7 +67,6 @@ var testComponentsYaml = `
description: eighteen of many`
func TestComponents_Build_Success(t *testing.T) {
var idxNode yaml.Node
mErr := yaml.Unmarshal([]byte(testComponentsYaml), &idxNode)
assert.NoError(t, mErr)
@@ -76,7 +76,7 @@ func TestComponents_Build_Success(t *testing.T) {
err := low.BuildModel(idxNode.Content[0], &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.NoError(t, err)
assert.Equal(t, "one of many", n.FindSchema("one").Value.Schema().Description.Value)
@@ -102,11 +102,9 @@ func TestComponents_Build_Success(t *testing.T) {
assert.Equal(t, "7add1a6c63a354b1a8ffe22552c213fe26d1229beb0b0cbe7c7ca06e63f9a364",
low.GenerateHashString(&n))
}
func TestComponents_Build_Success_Skip(t *testing.T) {
yml := `components:`
var idxNode yaml.Node
@@ -118,13 +116,11 @@ func TestComponents_Build_Success_Skip(t *testing.T) {
err := low.BuildModel(&idxNode, &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.NoError(t, err)
}
func TestComponents_Build_Fail(t *testing.T) {
yml := `
parameters:
schema:
@@ -139,13 +135,11 @@ func TestComponents_Build_Fail(t *testing.T) {
err := low.BuildModel(&idxNode, &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.Error(t, err)
}
func TestComponents_Build_ParameterFail(t *testing.T) {
yml := `
parameters:
pizza:
@@ -161,9 +155,8 @@ func TestComponents_Build_ParameterFail(t *testing.T) {
err := low.BuildModel(&idxNode, &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.Error(t, err)
}
// Test parse failure among many parameters.
@@ -191,12 +184,11 @@ func TestComponents_Build_ParameterFail_Many(t *testing.T) {
err := low.BuildModel(&idxNode, &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.Error(t, err)
}
func TestComponents_Build_Fail_TypeFail(t *testing.T) {
yml := `
parameters:
- schema:
@@ -211,12 +203,11 @@ func TestComponents_Build_Fail_TypeFail(t *testing.T) {
err := low.BuildModel(&idxNode, &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.Error(t, err)
}
func TestComponents_Build_ExtensionTest(t *testing.T) {
yml := `x-curry: seagull
headers:
x-curry-gull: vinadloo`
@@ -230,14 +221,12 @@ headers:
err := low.BuildModel(&idxNode, &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.NoError(t, err)
assert.Equal(t, "seagull", n.FindExtension("x-curry").Value)
}
func TestComponents_Build_HashEmpty(t *testing.T) {
yml := `x-curry: seagull`
var idxNode yaml.Node
@@ -249,11 +238,10 @@ func TestComponents_Build_HashEmpty(t *testing.T) {
err := low.BuildModel(&idxNode, &n)
assert.NoError(t, err)
err = n.Build(idxNode.Content[0], idx)
err = n.Build(context.Background(), idxNode.Content[0], idx)
assert.NoError(t, err)
assert.Equal(t, "seagull", n.FindExtension("x-curry").Value)
assert.Len(t, n.GetExtensions(), 1)
assert.Equal(t, "9cf2c6ab3f9ff7e5231fcb391c8af5c47406711d2ca366533f21a8bb2f67edfe",
low.GenerateHashString(&n))
}