Skip to content

Commit 97962d5

Browse files
author
Nayan Hajratwala
committed
extracted more methods to simplify tests
1 parent 7cf1334 commit 97962d5

File tree

1 file changed

+33
-89
lines changed

1 file changed

+33
-89
lines changed

Diff for: src/test/kotlin/org/springdoc/openapi/gradle/plugin/OpenApiGradlePluginTest.kt

+33-89
Original file line numberDiff line numberDiff line change
@@ -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

Comments
 (0)