@@ -809,11 +809,11 @@ private ClientOptInput createOptInputIssue(String issueNumber, Path target) {
809
809
public void testGenerateRecursiveDependentModelsBackwardCompatibilityIssue18444 () throws IOException {
810
810
Path target = Files .createTempDirectory ("test" );
811
811
File output = target .toFile ();
812
- String oldModelsProp = GlobalSettings .getProperty ("models" );
812
+ String oldModelsProp = GlobalSettings .getProperty (CodegenConstants . MODELS );
813
813
814
814
try {
815
815
DefaultGenerator generator = generatorGenerateRecursiveDependentModelsBackwardCompatibility ("false" );
816
- GlobalSettings .setProperty ("models" , "RQ1,RS1" );
816
+ GlobalSettings .setProperty (CodegenConstants . MODELS , "RQ1,RS1" );
817
817
ClientOptInput clientOptInput = createOptInputIssue18444 (target );
818
818
List <File > files = generator .opts (clientOptInput ).generate ();
819
819
Assert .assertEquals (files .size (), 17 );
@@ -853,9 +853,9 @@ public void testGenerateRecursiveDependentModelsBackwardCompatibilityIssue18444(
853
853
} finally {
854
854
output .deleteOnExit ();
855
855
if (oldModelsProp != null ) {
856
- GlobalSettings .setProperty ("models" , oldModelsProp );
856
+ GlobalSettings .setProperty (CodegenConstants . MODELS , oldModelsProp );
857
857
} else {
858
- GlobalSettings .clearProperty ("models" );
858
+ GlobalSettings .clearProperty (CodegenConstants . MODELS );
859
859
}
860
860
}
861
861
}
@@ -864,11 +864,11 @@ public void testGenerateRecursiveDependentModelsBackwardCompatibilityIssue18444(
864
864
public void testGenerateRecursiveDependentModelsIssue18444 () throws IOException {
865
865
Path target = Files .createTempDirectory ("test" );
866
866
File output = target .toFile ();
867
- String oldModelsProp = GlobalSettings .getProperty ("models" );
867
+ String oldModelsProp = GlobalSettings .getProperty (CodegenConstants . MODELS );
868
868
869
869
try {
870
870
DefaultGenerator generator = generatorGenerateRecursiveDependentModelsBackwardCompatibility ("true" );
871
- GlobalSettings .setProperty ("models" , "RQ1,RS1" );
871
+ GlobalSettings .setProperty (CodegenConstants . MODELS , "RQ1,RS1" );
872
872
ClientOptInput clientOptInput = createOptInputIssue18444 (target );
873
873
List <File > files = generator .opts (clientOptInput ).generate ();
874
874
Assert .assertEquals (files .size (), 21 );
@@ -908,9 +908,9 @@ public void testGenerateRecursiveDependentModelsIssue18444() throws IOException
908
908
} finally {
909
909
output .deleteOnExit ();
910
910
if (oldModelsProp != null ) {
911
- GlobalSettings .setProperty ("models" , oldModelsProp );
911
+ GlobalSettings .setProperty (CodegenConstants . MODELS , oldModelsProp );
912
912
} else {
913
- GlobalSettings .clearProperty ("models" );
913
+ GlobalSettings .clearProperty (CodegenConstants . MODELS );
914
914
}
915
915
}
916
916
}
@@ -919,11 +919,11 @@ public void testGenerateRecursiveDependentModelsIssue18444() throws IOException
919
919
public void testGenerateRecursiveDependentModelsIssue19220 () throws IOException {
920
920
Path target = Files .createTempDirectory ("test" );
921
921
File output = target .toFile ();
922
- String oldModelsProp = GlobalSettings .getProperty ("models" );
922
+ String oldModelsProp = GlobalSettings .getProperty (CodegenConstants . MODELS );
923
923
924
924
try {
925
925
DefaultGenerator generator = generatorGenerateRecursiveDependentModelsBackwardCompatibility ("true" );
926
- GlobalSettings .setProperty ("models" , "RQ1,RS1" );
926
+ GlobalSettings .setProperty (CodegenConstants . MODELS , "RQ1,RS1" );
927
927
ClientOptInput clientOptInput = createOptInputIssue19220 (target );
928
928
List <File > files = generator .opts (clientOptInput ).generate ();
929
929
Assert .assertEquals (files .size (), 21 );
@@ -963,11 +963,84 @@ public void testGenerateRecursiveDependentModelsIssue19220() throws IOException
963
963
} finally {
964
964
output .deleteOnExit ();
965
965
if (oldModelsProp != null ) {
966
- GlobalSettings .setProperty ("models" , oldModelsProp );
966
+ GlobalSettings .setProperty (CodegenConstants . MODELS , oldModelsProp );
967
967
} else {
968
- GlobalSettings .clearProperty ("models" );
968
+ GlobalSettings .clearProperty (CodegenConstants . MODELS );
969
969
}
970
970
}
971
971
}
972
972
973
+ @ Test
974
+ public void testGenerateMultiLinePropertiesIssue19628 () throws IOException {
975
+ Path target = Files .createTempDirectory ("test" );
976
+ File output = target .toFile ();
977
+ String multiLineSeparator = ",\n " ;
978
+ try {
979
+ final CodegenConfigurator configurator = new CodegenConfigurator ()
980
+ .setGeneratorName ("java" )
981
+ .setInputSpec ("src/test/resources/3_1/java/petstore.yaml" )
982
+ .setOutputDir (target .toAbsolutePath ().toString ());
983
+
984
+ final ClientOptInput clientOptInput = configurator .toClientOptInput ();
985
+ DefaultGenerator generator = new DefaultGenerator (true );
986
+
987
+ generator .setGeneratorPropertyDefault (CodegenConstants .MODELS , "true" );
988
+ generator .setGeneratorPropertyDefault (CodegenConstants .MODEL_TESTS , "false" );
989
+ generator .setGeneratorPropertyDefault (CodegenConstants .MODEL_DOCS , "false" );
990
+ generator .setGeneratorPropertyDefault (CodegenConstants .APIS , "true" );
991
+ generator .setGeneratorPropertyDefault (CodegenConstants .SUPPORTING_FILES , "true" );
992
+ generator .setGeneratorPropertyDefault (CodegenConstants .API_DOCS , "false" );
993
+ generator .setGeneratorPropertyDefault (CodegenConstants .MODEL_TESTS , "false" );
994
+ generator .setGeneratorPropertyDefault (CodegenConstants .API_TESTS , "false" );
995
+
996
+ List <String > supportingFilesToGenerate = Arrays .asList (
997
+ "pom.xml" ,
998
+ ".travis.yml" ,
999
+ ".gitignore" ,
1000
+ "git_push.sh"
1001
+ );
1002
+ GlobalSettings .setProperty (CodegenConstants .SUPPORTING_FILES , String .join (multiLineSeparator , supportingFilesToGenerate ));
1003
+
1004
+ List <String > apisToGenerate = Arrays .asList (
1005
+ "Pet" ,
1006
+ "User"
1007
+ );
1008
+ GlobalSettings .setProperty (CodegenConstants .APIS , String .join (multiLineSeparator , apisToGenerate ));
1009
+
1010
+ List <String > modelsToGenerate = Arrays .asList (
1011
+ "Category" ,
1012
+ "Pet" ,
1013
+ "Tag" ,
1014
+ "User"
1015
+ );
1016
+ GlobalSettings .setProperty (CodegenConstants .MODELS , String .join (multiLineSeparator , modelsToGenerate ));
1017
+
1018
+ List <File > files = generator .opts (clientOptInput ).generate ();
1019
+
1020
+ Assert .assertEquals (
1021
+ files .size (),
1022
+ // version file + files specified by properties
1023
+ 1 + supportingFilesToGenerate .size () + modelsToGenerate .size () + apisToGenerate .size ()
1024
+ );
1025
+
1026
+ TestUtils .ensureContainsFile (files , output , ".openapi-generator/VERSION" );
1027
+ for (String supportingFile : supportingFilesToGenerate ) {
1028
+ TestUtils .ensureContainsFile (files , output , supportingFile );
1029
+ }
1030
+
1031
+ for (String apiFile : apisToGenerate ) {
1032
+ String filename = "src/main/java/org/openapitools/client/api/" + apiFile + "Api.java" ;
1033
+ TestUtils .ensureContainsFile (files , output , filename );
1034
+ }
1035
+
1036
+ for (String modelFile : modelsToGenerate ) {
1037
+ String filename = "src/main/java/org/openapitools/client/model/" + modelFile + ".java" ;
1038
+ TestUtils .ensureContainsFile (files , output , filename );
1039
+ }
1040
+ } finally {
1041
+ GlobalSettings .reset ();
1042
+ output .deleteOnExit ();
1043
+ }
1044
+
1045
+ }
973
1046
}
0 commit comments