Skip to content

Commit 53a9186

Browse files
committed
simpler mapping validation (#302)
1 parent b801830 commit 53a9186

File tree

1 file changed

+14
-70
lines changed

1 file changed

+14
-70
lines changed

openapi-processor-core/src/test/kotlin/io/openapiprocessor/core/processor/mapping/v2/MappingValidatorSpec.kt

Lines changed: 14 additions & 70 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ package io.openapiprocessor.core.processor.mapping.v2
77

88
import io.kotest.core.spec.IsolationMode
99
import io.kotest.core.spec.style.StringSpec
10+
import io.kotest.data.Row1
1011
import io.kotest.data.blocking.forAll
1112
import io.kotest.data.row
1213
import io.kotest.matchers.booleans.shouldBeFalse
@@ -22,28 +23,21 @@ private fun String.fromResource(): String {
2223
.decodeToString()
2324
}
2425

26+
const val latestMapping: Int = 15
27+
28+
private fun createMappingRows(): Array<Row1<String>> {
29+
return 2.rangeTo(latestMapping).map {
30+
row("v$it")
31+
}.toTypedArray()
32+
}
33+
2534
class MappingValidatorSpec: StringSpec({
2635
isolationMode = IsolationMode.InstancePerTest
2736

2837
val validator = MappingValidator()
2938

3039
"validates mapping.yaml with matching schema version" {
31-
forAll(
32-
row("v2"),
33-
row("v2.1"),
34-
row("v3"),
35-
row("v4"),
36-
row("v5"),
37-
row("v6"),
38-
row("v7"),
39-
row("v8"),
40-
row("v9"),
41-
row("v10"),
42-
row("v11"),
43-
row("v12"),
44-
row("v13"),
45-
row("v14"),
46-
) { v ->
40+
forAll(*createMappingRows()) { v ->
4741
val yaml = """
4842
|openapi-processor-mapping: $v
4943
|
@@ -110,60 +104,10 @@ class MappingValidatorSpec: StringSpec({
110104
output.isValid.shouldBeTrue()
111105
}
112106

113-
"validates example mapping v2.1" {
114-
validator.validate("/mapping/v2.1/mapping.example.yaml".fromResource(), "v2.1").isValid.shouldBeTrue()
115-
}
116-
117-
"validates example mapping v3" {
118-
validator.validate("/mapping/v3/mapping.example.yaml".fromResource(), "v3").isValid.shouldBeTrue()
119-
}
120-
121-
"validates example mapping v4" {
122-
validator.validate("/mapping/v4/mapping.example.yaml".fromResource(), "v4").isValid.shouldBeTrue()
123-
}
124-
125-
"validates example mapping v5" {
126-
validator.validate("/mapping/v5/mapping.example.yaml".fromResource(), "v5").isValid.shouldBeTrue()
127-
}
128-
129-
"validates extensions mapping v6" {
130-
validator.validate("/mapping/v6/extensions.mapping.yaml".fromResource(), "v6").isValid.shouldBeTrue()
131-
}
132-
133-
"validates example mapping v6" {
134-
validator.validate("/mapping/v6/mapping.example.yaml".fromResource(), "v6").isValid.shouldBeTrue()
135-
}
136-
137-
"validates example mapping v7" {
138-
validator.validate("/mapping/v7/mapping.example.yaml".fromResource(), "v7").isValid.shouldBeTrue()
139-
}
140-
141-
"validates example mapping v8" {
142-
validator.validate("/mapping/v8/mapping.example.yaml".fromResource(), "v8").isValid.shouldBeTrue()
143-
}
144-
145-
"validates example mapping v9" {
146-
validator.validate("/mapping/v9/mapping.example.yaml".fromResource(), "v9").isValid.shouldBeTrue()
147-
}
148-
149-
"validates example mapping v10" {
150-
validator.validate("/mapping/v10/mapping.example.yaml".fromResource(), "v10").isValid.shouldBeTrue()
151-
}
152-
153-
"validates example mapping v11" {
154-
validator.validate("/mapping/v11/mapping.example.yaml".fromResource(), "v11").isValid.shouldBeTrue()
155-
}
156-
157-
"validates example mapping v12" {
158-
validator.validate("/mapping/v12/mapping.example.yaml".fromResource(), "v12").isValid.shouldBeTrue()
159-
}
160-
161-
"validates example mapping v13" {
162-
validator.validate("/mapping/v13/mapping.example.yaml".fromResource(), "v13").isValid.shouldBeTrue()
163-
}
164-
165-
"validates example mapping v14" {
166-
validator.validate("/mapping/v14/mapping.example.yaml".fromResource(), "v14").isValid.shouldBeTrue()
107+
"validates example mapping" {
108+
forAll(*createMappingRows()) { v ->
109+
validator.validate("/mapping/$v/mapping.example.yaml".fromResource(), v).isValid.shouldBeTrue()
110+
}
167111
}
168112

169113
"validates mapping with result key on multiple levels" {

0 commit comments

Comments
 (0)