File tree Expand file tree Collapse file tree 2 files changed +12
-0
lines changed
modules/openapi-generator/src
main/java/org/openapitools/codegen/languages
test/java/org/openapitools/codegen/java Expand file tree Collapse file tree 2 files changed +12
-0
lines changed Original file line number Diff line number Diff line change 3131import io .swagger .v3 .oas .models .parameters .RequestBody ;
3232import io .swagger .v3 .oas .models .servers .Server ;
3333import io .swagger .v3 .parser .util .SchemaTypeUtil ;
34+ import java .text .SimpleDateFormat ;
3435import lombok .Getter ;
3536import lombok .Setter ;
3637import org .apache .commons .io .FilenameUtils ;
@@ -71,6 +72,7 @@ public abstract class AbstractJavaCodegen extends DefaultCodegen implements Code
7172
7273 private final Logger LOGGER = LoggerFactory .getLogger (AbstractJavaCodegen .class );
7374 private static final String ARTIFACT_VERSION_DEFAULT_VALUE = "1.0.0" ;
75+ private static final SimpleDateFormat DATE_FORMAT = new SimpleDateFormat ("yyyy-MM-dd" , Locale .ROOT );
7476
7577 public static final String DEFAULT_LIBRARY = "<default>" ;
7678 public static final String DATE_LIBRARY = "dateLibrary" ;
@@ -1638,6 +1640,9 @@ public void setParameterExampleValue(CodegenParameter p) {
16381640 @ Override
16391641 public String toExampleValue (Schema p ) {
16401642 if (p .getExample () != null ) {
1643+ if (p .getExample () instanceof Date ) {
1644+ return DATE_FORMAT .format (p .getExample ());
1645+ }
16411646 return escapeText (p .getExample ().toString ());
16421647 } else {
16431648 return null ;
Original file line number Diff line number Diff line change @@ -965,4 +965,11 @@ public void removeAnnotationsTest() {
965965 Assert .assertEquals (codegen .removeAnnotations ("List<@Valid Pet>" ), "List<Pet>" );
966966 }
967967
968+ @ Test (description = "test generated example values for string properties" )
969+ public void testGeneratedExampleValues () {
970+ final OpenAPI openAPI = FLATTENED_SPEC .get ("3_0/spring/date-time-parameter-types-for-testing" );
971+ codegen .setOpenAPI (openAPI );
972+ DateSchema dateSchema = (DateSchema ) openAPI .getPaths ().get ("/thingy/{date}" ).getPost ().getParameters ().get (0 ).getSchema ();
973+ Assert .assertTrue (codegen .escapeQuotationMark (codegen .toExampleValue (dateSchema )).matches ("2021-01-01" ));
974+ }
968975}
You can’t perform that action at this time.
0 commit comments