Search in sources :

Example 61 with Reader

use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.

the class ReaderTest method testTicket2794.

@Test(description = "NotNull parameters")
public void testTicket2794() {
    Reader reader = new Reader(new OpenAPI());
    OpenAPI openAPI = reader.read(Ticket2794Resource.class);
    String yaml = "openapi: 3.0.1\n" + "paths:\n" + "  /notnullparameter:\n" + "    get:\n" + "      operationId: getBooks\n" + "      parameters:\n" + "      - name: page\n" + "        in: query\n" + "        required: true\n" + "        schema:\n" + "          type: integer\n" + "          format: int32\n" + "      responses:\n" + "        default:\n" + "          description: default response\n" + "          content:\n" + "            application/json: {}\n" + "  /notnullparameter/newnotnull:\n" + "    post:\n" + "      operationId: insertnotnull\n" + "      requestBody:\n" + "        content:\n" + "          '*/*':\n" + "            schema:\n" + "              $ref: '#/components/schemas/Book'\n" + "        required: true\n" + "      responses:\n" + "        default:\n" + "          description: default response\n" + "          content:\n" + "            '*/*': {}\n" + "  /notnullparameter/new_reqBody_required:\n" + "    post:\n" + "      operationId: insert\n" + "      requestBody:\n" + "        content:\n" + "          '*/*':\n" + "            schema:\n" + "              $ref: '#/components/schemas/Book'\n" + "        required: true\n" + "      responses:\n" + "        default:\n" + "          description: default response\n" + "          content:\n" + "            '*/*': {}\n" + "components:\n" + "  schemas:\n" + "    Book:\n" + "      type: object\n" + "      properties:\n" + "        foo:\n" + "          type: string\n";
    SerializationMatchers.assertEqualsToYaml(openAPI, yaml);
}
Also used : OpenAPI(io.swagger.v3.oas.models.OpenAPI) Test(org.testng.annotations.Test)

Example 62 with Reader

use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.

the class ReaderTest method testTicket3082.

@Test(description = "response generic subclass")
public void testTicket3082() {
    Reader reader = new Reader(new OpenAPI());
    OpenAPI openAPI = reader.read(ProcessTokenRestService.class);
    String yaml = "openapi: 3.0.1\n" + "paths:\n" + "  /token:\n" + "    post:\n" + "      operationId: create\n" + "      requestBody:\n" + "        content:\n" + "          application/json:\n" + "            schema:\n" + "              $ref: '#/components/schemas/ProcessTokenDTO'\n" + "      responses:\n" + "        default:\n" + "          description: default response\n" + "          content:\n" + "            application/json:\n" + "              schema:\n" + "                $ref: '#/components/schemas/ProcessTokenDTO'\n" + "components:\n" + "  schemas:\n" + "    ProcessTokenDTO:\n" + "      type: object\n" + "      properties:\n" + "        guid:\n" + "          type: string\n";
    SerializationMatchers.assertEqualsToYaml(openAPI, yaml);
}
Also used : OpenAPI(io.swagger.v3.oas.models.OpenAPI) Test(org.testng.annotations.Test)

Example 63 with Reader

use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.

the class ReaderTest method testParameterExtensions.

@Test(description = "ParameterExtensions Tests")
public void testParameterExtensions() {
    Reader reader = new Reader(new OpenAPI());
    OpenAPI openAPI = reader.read(ParameterExtensionsResource.class);
    assertNotNull(openAPI);
    Map<String, Object> extensions = openAPI.getPaths().get("/").getGet().getParameters().get(0).getExtensions();
    assertNotNull(extensions);
    assertEquals(1, extensions.size());
    assertNotNull(extensions.get("x-parameter"));
}
Also used : OpenAPI(io.swagger.v3.oas.models.OpenAPI) Test(org.testng.annotations.Test)

Example 64 with Reader

use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.

the class ReaderTest method testTicket2806.

@Test(description = "array schema example")
public void testTicket2806() {
    Reader reader = new Reader(new OpenAPI());
    OpenAPI openAPI = reader.read(Ticket2806Resource.class);
    String yaml = "openapi: 3.0.1\n" + "paths:\n" + "  /test:\n" + "    get:\n" + "      operationId: getTest\n" + "      responses:\n" + "        default:\n" + "          description: default response\n" + "          content:\n" + "            '*/*':\n" + "              schema:\n" + "                $ref: '#/components/schemas/Test'\n" + "components:\n" + "  schemas:\n" + "    Test:\n" + "      type: object\n" + "      properties:\n" + "        stringArray:\n" + "          maxItems: 4\n" + "          minItems: 2\n" + "          uniqueItems: true\n" + "          type: array\n" + "          description: Array desc\n" + "          example:\n" + "          - aaa\n" + "          - bbb\n" + "          items:\n" + "            type: string\n" + "            description: Hello, World!\n" + "            example: Lorem ipsum dolor set\n";
    SerializationMatchers.assertEqualsToYaml(openAPI, yaml);
}
Also used : OpenAPI(io.swagger.v3.oas.models.OpenAPI) Test(org.testng.annotations.Test)

Example 65 with Reader

use of io.swagger.v3.jaxrs2.Reader in project swagger-core by swagger-api.

the class ReaderTest method testTicket3029.

@Test(description = "Parameter with ref")
public void testTicket3029() {
    Components components = new Components();
    components.addParameters("id", new Parameter().description("Id Description").schema(new IntegerSchema()).in(ParameterIn.QUERY.toString()).example(1).required(true));
    OpenAPI oas = new OpenAPI().info(new Info().description("info")).components(components);
    Reader reader = new Reader(oas);
    OpenAPI openAPI = reader.read(RefParameter3029Resource.class);
    String yaml = "openapi: 3.0.1\n" + "info:\n" + "  description: info\n" + "paths:\n" + "  /2:\n" + "    get:\n" + "      summary: Simple get operation\n" + "      operationId: sendPayload2\n" + "      parameters:\n" + "      - $ref: '#/components/parameters/id'\n" + "      responses:\n" + "        default:\n" + "          description: default response\n" + "          content:\n" + "            '*/*': {}\n" + "  /1:\n" + "    get:\n" + "      summary: Simple get operation\n" + "      operationId: sendPayload1\n" + "      parameters:\n" + "      - $ref: '#/components/parameters/id'\n" + "      responses:\n" + "        default:\n" + "          description: default response\n" + "          content:\n" + "            '*/*': {}\n" + "components:\n" + "  parameters:\n" + "    id:\n" + "      in: query\n" + "      description: Id Description\n" + "      required: true\n" + "      schema:\n" + "        type: integer\n" + "        format: int32\n" + "      example: 1\n";
    SerializationMatchers.assertEqualsToYaml(openAPI, yaml);
}
Also used : Components(io.swagger.v3.oas.models.Components) IntegerSchema(io.swagger.v3.oas.models.media.IntegerSchema) Parameter(io.swagger.v3.oas.models.parameters.Parameter) Info(io.swagger.v3.oas.models.info.Info) OpenAPI(io.swagger.v3.oas.models.OpenAPI) Test(org.testng.annotations.Test)

Aggregations

OpenAPI (io.swagger.v3.oas.models.OpenAPI)85 Test (org.testng.annotations.Test)81 Operation (io.swagger.v3.oas.models.Operation)24 PathItem (io.swagger.v3.oas.models.PathItem)17 Info (io.swagger.v3.oas.models.info.Info)17 Components (io.swagger.v3.oas.models.Components)15 Paths (io.swagger.v3.oas.models.Paths)15 Reader (io.swagger.v3.jaxrs2.Reader)11 IntegerSchema (io.swagger.v3.oas.models.media.IntegerSchema)9 ArraySchema (io.swagger.v3.oas.models.media.ArraySchema)8 Schema (io.swagger.v3.oas.models.media.Schema)8 Parameter (io.swagger.v3.oas.models.parameters.Parameter)7 Method (java.lang.reflect.Method)7 SwaggerConfiguration (io.swagger.v3.oas.integration.SwaggerConfiguration)5 AbstractSpecFilter (io.swagger.v3.core.filter.AbstractSpecFilter)4 OpenAPISpecFilter (io.swagger.v3.core.filter.OpenAPISpecFilter)4 SpecFilter (io.swagger.v3.core.filter.SpecFilter)4 AbstractAnnotationTest (io.swagger.v3.jaxrs2.annotations.AbstractAnnotationTest)4 GenericOpenApiContext (io.swagger.v3.oas.integration.GenericOpenApiContext)4 OpenApiContext (io.swagger.v3.oas.integration.api.OpenApiContext)4