diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index bb48b5a41466..94eb3273c049 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -5734,7 +5734,7 @@ private CodegenSecurity defaultCodegenSecurity(String key, SecurityScheme securi cs.name = key; cs.description = securityScheme.getDescription(); cs.type = securityScheme.getType().toString(); - cs.isCode = cs.isPassword = cs.isApplication = cs.isImplicit = cs.isOpenId = false; + cs.isCode = cs.isPassword = cs.isApplication = cs.isImplicit = cs.isOpenId = cs.isOAuth = false; cs.isHttpSignature = false; cs.isBasicBasic = cs.isBasicBearer = false; cs.scheme = securityScheme.getScheme(); diff --git a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java index 056a55a95d88..f1aca92f0c05 100644 --- a/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java +++ b/modules/openapi-generator/src/test/java/org/openapitools/codegen/DefaultCodegenTest.java @@ -5036,6 +5036,19 @@ public void testQueryIsJsonMimeType() { assertTrue(codegenOperation.queryParams.stream().allMatch(p -> p.queryIsJsonMimeType)); } + @Test + public void testDefaultOauthIsNotNull() { + final DefaultCodegen codegen = new DefaultCodegen(); + final OpenAPI openAPI = TestUtils.parseFlattenSpec("src/test/resources/3_1/issue_20662.yaml"); + codegen.setOpenAPI(openAPI); + List securitySchemes = codegen.fromSecurity(openAPI.getComponents().getSecuritySchemes()); + assertThat(securitySchemes.size()).isEqualTo(1); + CodegenSecurity openIdScheme = securitySchemes.get(0); + assertNotNull(openIdScheme.isOAuth); + assertFalse(openIdScheme.isOAuth); + assertTrue(openIdScheme.isOpenId); + } + private List getRequiredVars(CodegenModel model) { return getNames(model.getRequiredVars()); } diff --git a/modules/openapi-generator/src/test/resources/3_1/issue_20662.yaml b/modules/openapi-generator/src/test/resources/3_1/issue_20662.yaml new file mode 100644 index 000000000000..feef456b68a8 --- /dev/null +++ b/modules/openapi-generator/src/test/resources/3_1/issue_20662.yaml @@ -0,0 +1,22 @@ +openapi: 3.1.0 +info: + title: Security scheme test + version: 1.0.0 +paths: + /test: + get: + responses: + '200': + description: successful operation + content: + application/json: + schema: + type: string +components: + securitySchemes: + openId: + type: openIdConnect + openIdConnectUrl: https://localhost:8443 +security: + - openId: + - test \ No newline at end of file