@@ -27,31 +27,56 @@ class DefaultWriterFactorySpec : StringSpec({
2727 beforeTest {
2828 options.packageName = " io.openapiprocessor"
2929 options.targetDir = listOf(target.toString(), "java", "src").joinToString(File .separator)
30+ options.beanValidation = false
3031 }
3132
3233 " initializes package folders" {
33- val writerFactory = DefaultWriterFactory ()
34- writerFactory.init (options.targetDir!!, options.packageName )
34+ val writerFactory = DefaultWriterFactory (options )
35+ writerFactory.init ()
3536
3637 val api = options.getSourceDir("api")
3738 val model = options.getSourceDir("model")
3839 val support = options.getSourceDir("support")
40+ val validation = options.getSourceDir("validation")
3941
4042 Files .exists(api) shouldBe true
4143 Files .isDirectory(api) shouldBe true
4244 Files .exists(model) shouldBe true
4345 Files .isDirectory(model) shouldBe true
4446 Files .exists(support) shouldBe true
4547 Files .isDirectory(support) shouldBe true
48+ Files .exists(validation) shouldBe false
49+ Files .isDirectory(validation) shouldBe false
50+ }
51+
52+ " initializes package folders with validation" {
53+ options.beanValidation = true
54+ val writerFactory = DefaultWriterFactory (options)
55+ writerFactory.init ()
56+
57+ val api = options.getSourceDir("api")
58+ val model = options.getSourceDir("model")
59+ val support = options.getSourceDir("support")
60+ val validation = options.getSourceDir("validation")
61+
62+ Files .exists(api) shouldBe true
63+ Files .isDirectory(api) shouldBe true
64+ Files .exists(model) shouldBe true
65+ Files .isDirectory(model) shouldBe true
66+ Files .exists(support) shouldBe true
67+ Files .isDirectory(support) shouldBe true
68+ Files .exists(validation) shouldBe true
69+ Files .isDirectory(validation) shouldBe true
4670 }
4771
4872 " does not fail if target folder structure already exists" {
4973 Files .createDirectories(options.getSourceDir("api"))
5074 Files .createDirectories(options.getSourceDir("model"))
5175 Files .createDirectories(options.getSourceDir("support"))
76+ Files .createDirectories(options.getSourceDir("validation"))
5277
5378 shouldNotThrowAny {
54- DefaultWriterFactory ().init (options.targetDir!!, options.packageName )
79+ DefaultWriterFactory (options ).init ()
5580 }
5681 }
5782
@@ -60,8 +85,8 @@ class DefaultWriterFactorySpec : StringSpec({
6085 return options.getSourcePath("support", name).text
6186 }
6287
63- val factory = DefaultWriterFactory ()
64- factory.init (options.targetDir!!, options.packageName )
88+ val factory = DefaultWriterFactory (options )
89+ factory.init ()
6590
6691 val writer = factory.createWriter("${options.packageName}.support", "Generated ")
6792 writer.write("public @interface Generated {}\n")
@@ -75,8 +100,8 @@ class DefaultWriterFactorySpec : StringSpec({
75100 return options.getSourcePath("api", name).text
76101 }
77102
78- val factory = DefaultWriterFactory ()
79- factory.init (options.targetDir!!, options.packageName )
103+ val factory = DefaultWriterFactory (options )
104+ factory.init ()
80105
81106 val writer = factory.createWriter("${options.packageName}.api", "Api ")
82107 writer.write("public interface Api {}\n")
@@ -90,8 +115,8 @@ class DefaultWriterFactorySpec : StringSpec({
90115 return options.getSourcePath("model", name).text
91116 }
92117
93- val factory = DefaultWriterFactory ()
94- factory.init (options.targetDir!!, options.packageName )
118+ val factory = DefaultWriterFactory (options )
119+ factory.init ()
95120
96121 val writer = factory.createWriter("${options.packageName}.model", "Model ")
97122 writer.write("public class Model {}\n")
@@ -104,25 +129,30 @@ class DefaultWriterFactorySpec : StringSpec({
104129 val api = options.getSourceDir("api")
105130 val model = options.getSourceDir("model")
106131 val support = options.getSourceDir("support")
132+ val validation = options.getSourceDir("validation")
107133
108134 Files .createDirectories(api)
109135 Files .createDirectories(model)
110136 Files .createDirectories(support)
137+ Files .createDirectories(validation)
111138
112139 api.resolve("Old .java").createFile()
113140 model.resolve("Old .java").createFile()
114141 support.resolve("Old .java").createFile()
142+ validation.resolve("Old .java").createFile()
115143
116144 Files .exists(api.resolve("Old .java")) shouldBe true
117145 Files .exists(model.resolve("Old .java")) shouldBe true
118146 Files .exists(support.resolve("Old .java")) shouldBe true
147+ Files .exists(validation.resolve("Old .java")) shouldBe true
119148
120- val factory = DefaultWriterFactory ()
121- factory.init (options.targetDir!!, options.packageName )
149+ val factory = DefaultWriterFactory (options )
150+ factory.init ()
122151
123152 Files .exists(api.resolve("Old .java")) shouldBe false
124153 Files .exists(model.resolve("Old .java")) shouldBe false
125154 Files .exists(support.resolve("Old .java")) shouldBe false
155+ Files .exists(validation.resolve("Old .java")) shouldBe false
126156 }
127157})
128158
0 commit comments