public OpenAPI read(Class<?> cls) {
        return read(cls, resolveApplicationPath(), null, false, null, null, new LinkedHashSet<String>(), new ArrayList<Parameter>(), new HashSet<Class<?>>());
    }
@Test(description = "non consistent overridden generic resource methods")
    public void testTicket2144() {
        Reader reader = new Reader(new OpenAPI());

        OpenAPI openAPI = reader.read(ItemResource.class);
        String yaml = "openapi: 3.0.1\n" +
                "paths:\n" +
                "  /item/{id}:\n" +
                "    get:\n" +
                "      operationId: getById\n" +
                "      parameters:\n" +
                "      - name: id\n" +
                "        in: path\n" +
                "        required: true\n" +
                "        schema:\n" +
                "          type: string\n" +
                "      responses:\n" +
                "        default:\n" +
                "          description: default response\n" +
                "          content:\n" +
                "            '*/*':\n" +
                "              schema:\n" +
                "                $ref: '#/components/schemas/ItemWithChildren'\n" +
                "  /item/nogeneric/{id}:\n" +
                "    get:\n" +
                "      operationId: getByIdNoGeneric\n" +
                "      parameters:\n" +
                "      - name: id\n" +
                "        in: path\n" +
                "        required: true\n" +
                "        schema:\n" +
                "          type: string\n" +
                "      responses:\n" +
                "        default:\n" +
                "          description: default response\n" +
                "          content:\n" +
                "            '*/*':\n" +
                "              schema:\n" +
                "                $ref: '#/components/schemas/ItemWithChildren'\n" +
                "  /item/nogenericsamereturn/{id}:\n" +
                "    get:\n" +
                "      operationId: getByIdNoGenericSameReturn\n" +
                "      parameters:\n" +
                "      - name: id\n" +
                "        in: path\n" +
                "        required: true\n" +
                "        schema:\n" +
                "          type: string\n" +
                "      responses:\n" +
                "        default:\n" +
                "          description: default response\n" +
                "          content:\n" +
                "            '*/*':\n" +
                "              schema:\n" +
                "                $ref: '#/components/schemas/BaseDTO'\n" +
                "  /item/genericparam:\n" +
                "    post:\n" +
                "      operationId: genericParam\n" +
                "      requestBody:\n" +
                "        content:\n" +
                "          '*/*':\n" +
                "            schema:\n" +
                "              $ref: '#/components/schemas/ItemWithChildren'\n" +
                "      responses:\n" +
                "        default:\n" +
                "          description: default response\n" +
                "          content:\n" +
                "            '*/*':\n" +
                "              schema:\n" +
                "                $ref: '#/components/schemas/BaseDTO'\n" +
                "components:\n" +
                "  schemas:\n" +
                "    ItemWithChildren:\n" +
                "      type: object\n" +
                "      properties:\n" +
                "        name:\n" +
                "          type: string\n" +
                "        names:\n" +
                "          type: string\n" +
                "    BaseDTO:\n" +
                "      type: object\n" +
                "      properties:\n" +
                "        name:\n" +
                "          type: string";
        SerializationMatchers.assertEqualsToYaml(openAPI, yaml);
    }