File: issue819_test.go

package info (click to toggle)
golang-github-getkin-kin-openapi 0.124.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 4,288 kB
  • sloc: sh: 344; makefile: 4
file content (39 lines) | stat: -rw-r--r-- 898 bytes parent folder | download | duplicates (3)
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
27
28
29
30
31
32
33
34
35
36
37
38
39
package openapi3

import (
	"testing"

	"github.com/stretchr/testify/require"
)

func TestIssue819ResponsesGetPatternedFields(t *testing.T) {
	spec := `
openapi: "3.0.3"
info:
  title: 'My app'
  version: 1.0.0
  description: 'An API'

paths:
  /v1/operation:
    get:
      summary: Fetch something
      responses:
        2XX:
          description: Success
          content:
            application/json:
              schema:
                type: object
                description: An error response body.
`[1:]
	sl := NewLoader()
	doc, err := sl.LoadFromData([]byte(spec))
	require.NoError(t, err)
	err = doc.Validate(sl.Context)
	require.NoError(t, err)

	require.NotNil(t, doc.Paths.Value("/v1/operation").Get.Responses.Status(201))
	require.Nil(t, doc.Paths.Value("/v1/operation").Get.Responses.Status(404))
	require.Nil(t, doc.Paths.Value("/v1/operation").Get.Responses.Status(999))
}