1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
package openapi3
import (
"encoding/json"
"testing"
"github.com/stretchr/testify/require"
)
func TestIssue746(t *testing.T) {
schema := &Schema{}
err := schema.UnmarshalJSON([]byte(`{"additionalProperties": false}`))
require.NoError(t, err)
var value interface{}
err = json.Unmarshal([]byte(`{"foo": "bar"}`), &value)
require.NoError(t, err)
err = schema.VisitJSON(value)
require.Error(t, err)
schemaErr := &SchemaError{}
require.ErrorAs(t, err, &schemaErr)
require.Equal(t, "properties", schemaErr.SchemaField)
require.Equal(t, `property "foo" is unsupported`, schemaErr.Reason)
}
|