public OpenAPI read(Class<?> cls) {
        return read(cls, resolveApplicationPath(), null, false, null, null, new LinkedHashSet<String>(), new ArrayList<Parameter>(), new HashSet<Class<?>>());
    }
@Test(description = "Test Schema AdditionalProperties annotations")
    public void testSchemaAdditionalProperties() {
        Reader reader = new Reader(new OpenAPI());

        OpenAPI openAPI = reader.read(SchemaAdditionalPropertiesResource.class);
        String yaml = "openapi: 3.0.1\n" +
                "paths:\n" +
                "  /arraySchemaImpl:\n" +
                "    get:\n" +
                "      operationId: arraySchemaImpl\n" +
                "      responses:\n" +
                "        \"200\":\n" +
                "          description: voila!\n" +
                "          content:\n" +
                "            application/json:\n" +
                "              schema:\n" +
                "                type: object\n" +
                "                additionalProperties:\n" +
                "                  type: array\n" +
                "                  items:\n" +
                "                    $ref: '#/components/schemas/Pet'\n" +
                "  /fromtResponseType:\n" +
                "    get:\n" +
                "      operationId: fromtResponseType\n" +
                "      responses:\n" +
                "        default:\n" +
                "          description: default response\n" +
                "          content:\n" +
                "            '*/*':\n" +
                "              schema:\n" +
                "                type: object\n" +
                "                additionalProperties:\n" +
                "                  type: array\n" +
                "                  items:\n" +
                "                    $ref: '#/components/schemas/Pet'\n" +
                "  /schemaImpl:\n" +
                "    get:\n" +
                "      operationId: schemaImpl\n" +
                "      responses:\n" +
                "        \"200\":\n" +
                "          description: voila!\n" +
                "          content:\n" +
                "            application/json:\n" +
                "              schema:\n" +
                "                type: object\n" +
                "                additionalProperties:\n" +
                "                  $ref: '#/components/schemas/Pet'\n" +
                "  /schemaNotImpl:\n" +
                "    get:\n" +
                "      operationId: schemaNotImpl\n" +
                "      responses:\n" +
                "        \"200\":\n" +
                "          description: voila!\n" +
                "          content:\n" +
                "            application/json:\n" +
                "              schema:\n" +
                "                type: object\n" +
                "                additionalProperties:\n" +
                "                  $ref: '#/components/schemas/Pet'\n" +
                "components:\n" +
                "  schemas:\n" +
                "    Pet:\n" +
                "      type: object\n" +
                "      properties:\n" +
                "        foo:\n" +
                "          type: string\n";
        SerializationMatchers.assertEqualsToYaml(openAPI, yaml);
    }