@@ -51,16 +51,8 @@ class OpenApiGradlePluginTest {
5151 fun `default build no options` () {
5252 buildFile.writeText(baseBuildGradle)
5353
54- val result = GradleRunner .create()
55- .withProjectDir(projectTestDir)
56- .withArguments(" clean" , " generateOpenApiDocs" )
57- .withPluginClasspath()
58- .build()
59-
60- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
61-
62- val openApiJsonFile = File (projectBuildDir, DEFAULT_OPEN_API_FILE_NAME )
63- assertOpenApiJsonFileIsAsExpected(openApiJsonFile, 1 )
54+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
55+ assertOpenApiJsonFile(1 )
6456 }
6557
6658 @Test
@@ -76,16 +68,8 @@ class OpenApiGradlePluginTest {
7668 """ .trimMargin()
7769 )
7870
79- val result = GradleRunner .create()
80- .withProjectDir(projectTestDir)
81- .withArguments(" clean" , " generateOpenApiDocs" )
82- .withPluginClasspath()
83- .build()
84-
85- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
86-
87- val openApiJsonFile = File (specialOutputDir, DEFAULT_OPEN_API_FILE_NAME )
88- assertOpenApiJsonFileIsAsExpected(openApiJsonFile, 1 )
71+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
72+ assertOpenApiJsonFile(1 , buildDir = specialOutputDir)
8973 }
9074
9175 @Test
@@ -100,16 +84,8 @@ class OpenApiGradlePluginTest {
10084 """ .trimMargin()
10185 )
10286
103- val result = GradleRunner .create()
104- .withProjectDir(projectTestDir)
105- .withArguments(" clean" , " generateOpenApiDocs" )
106- .withPluginClasspath()
107- .build()
108-
109- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
110-
111- val openApiJsonFile = File (projectBuildDir, specialOutputJsonFileName)
112- assertOpenApiJsonFileIsAsExpected(openApiJsonFile, 1 )
87+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
88+ assertOpenApiJsonFile(1 , specialOutputJsonFileName)
11389 }
11490
11591 @Test
@@ -122,16 +98,8 @@ class OpenApiGradlePluginTest {
12298 """ .trimMargin()
12399 )
124100
125- val result = GradleRunner .create()
126- .withProjectDir(projectTestDir)
127- .withArguments(" clean" , " generateOpenApiDocs" )
128- .withPluginClasspath()
129- .build()
130-
131- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
132-
133- val openApiJsonFile = File (projectBuildDir, DEFAULT_OPEN_API_FILE_NAME )
134- assertOpenApiJsonFileIsAsExpected(openApiJsonFile, 3 )
101+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
102+ assertOpenApiJsonFile(3 )
135103 }
136104
137105 @Test
@@ -144,16 +112,8 @@ class OpenApiGradlePluginTest {
144112 """ .trimMargin()
145113 )
146114
147- val result = GradleRunner .create()
148- .withProjectDir(projectTestDir)
149- .withArguments(" clean" , " generateOpenApiDocs" , " -Dspring.profiles.active=multiple-endpoints" )
150- .withPluginClasspath()
151- .build()
152-
153- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
154-
155- val openApiJsonFile = File (projectBuildDir, DEFAULT_OPEN_API_FILE_NAME )
156- assertOpenApiJsonFileIsAsExpected(openApiJsonFile, 2 )
115+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild(" -Dspring.profiles.active=multiple-endpoints" )).outcome)
116+ assertOpenApiJsonFile(2 )
157117 }
158118
159119 @Test
@@ -167,16 +127,8 @@ class OpenApiGradlePluginTest {
167127 """ .trimMargin()
168128 )
169129
170- val result = GradleRunner .create()
171- .withProjectDir(projectTestDir)
172- .withArguments(" clean" , " generateOpenApiDocs" )
173- .withPluginClasspath()
174- .build()
175-
176- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
177-
178- val openApiJsonFile = File (projectBuildDir, DEFAULT_OPEN_API_FILE_NAME )
179- assertOpenApiJsonFileIsAsExpected(openApiJsonFile, 1 )
130+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
131+ assertOpenApiJsonFile(1 )
180132 }
181133
182134 @Test
@@ -190,14 +142,8 @@ class OpenApiGradlePluginTest {
190142 """ .trimMargin()
191143 )
192144
193- val result = GradleRunner .create()
194- .withProjectDir(projectTestDir)
195- .withArguments(" clean" , " generateOpenApiDocs" )
196- .withPluginClasspath()
197- .build()
198-
199- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
200- assertOpenApiJsonFileIsAsExpected(File (projectBuildDir, DEFAULT_OPEN_API_FILE_NAME ), 1 )
145+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
146+ assertOpenApiJsonFile(1 )
201147 }
202148
203149 @Test
@@ -215,15 +161,9 @@ class OpenApiGradlePluginTest {
215161 """ .trimMargin()
216162 )
217163
218- val result = GradleRunner .create()
219- .withProjectDir(projectTestDir)
220- .withArguments(" clean" , " generateOpenApiDocs" )
221- .withPluginClasspath()
222- .build()
223-
224- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
225- assertOpenApiJsonFileIsAsExpected(File (projectBuildDir, outputJsonFileNameGroupA), 1 )
226- assertOpenApiJsonFileIsAsExpected(File (projectBuildDir, outputJsonFileNameGroupB), 2 )
164+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
165+ assertOpenApiJsonFile(1 , outputJsonFileNameGroupA)
166+ assertOpenApiJsonFile(2 , outputJsonFileNameGroupB)
227167 }
228168
229169 @Test
@@ -244,22 +184,26 @@ class OpenApiGradlePluginTest {
244184 """ .trimMargin()
245185 )
246186
247- val result = GradleRunner .create()
248- .withProjectDir(projectTestDir)
249- .withArguments(" clean" , " generateOpenApiDocs" )
250- .withPluginClasspath()
251- .build()
252-
253- assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(result).outcome)
187+ assertEquals(TaskOutcome .SUCCESS , openApiDocsTask(runTheBuild()).outcome)
254188 assertFalse(File (projectBuildDir, outputJsonFileNameSingleGroupA).exists())
255- assertOpenApiJsonFileIsAsExpected( File (projectBuildDir , outputJsonFileNameGroupA), 1 )
256- assertOpenApiJsonFileIsAsExpected( File (projectBuildDir , outputJsonFileNameGroupB), 2 )
189+ assertOpenApiJsonFile( 1 , outputJsonFileNameGroupA)
190+ assertOpenApiJsonFile( 2 , outputJsonFileNameGroupB)
257191 }
258192
259- private fun assertOpenApiJsonFileIsAsExpected (openApiJsonFile : File , expectedNumberOfPaths : Int ) {
260- val openApiJson = getOpenApiJsonAtLocation(openApiJsonFile)
193+ private fun runTheBuild (vararg additionalArguments : String = emptyArray()) = GradleRunner .create()
194+ .withProjectDir(projectTestDir)
195+ .withArguments(" clean" , " generateOpenApiDocs" , * additionalArguments)
196+ .withPluginClasspath()
197+ .build()
198+
199+ private fun assertOpenApiJsonFile (
200+ expectedPathCount : Int ,
201+ outputJsonFileName : String = DEFAULT_OPEN_API_FILE_NAME ,
202+ buildDir : File = projectBuildDir
203+ ) {
204+ val openApiJson = getOpenApiJsonAtLocation(File (buildDir, outputJsonFileName))
261205 assertEquals(" 3.0.1" , openApiJson.string(" openapi" ))
262- assertEquals(expectedNumberOfPaths , openApiJson.obj(" paths" )!! .size)
206+ assertEquals(expectedPathCount , openApiJson.obj(" paths" )!! .size)
263207 }
264208
265209 private fun getOpenApiJsonAtLocation (path : File ) = Parser .default().parse(FileReader (path)) as JsonObject
0 commit comments