Skip to content

Commit e2e7da8

Browse files
committed
test multiple configurations of same processor
1 parent a8f54fb commit e2e7da8

1 file changed

Lines changed: 76 additions & 0 deletions

File tree

Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
/*
2+
* Copyright 2019 https://github.com/openapi-processor/openapi-processor-gradle
3+
* PDX-License-Identifier: Apache-2.0
4+
*/
5+
6+
package io.openapiprocessor.gradle
7+
8+
import io.openapiprocessor.gradle.support.Gradle
9+
import io.openapiprocessor.gradle.support.PluginSpec
10+
import org.gradle.testkit.runner.BuildResult
11+
import spock.lang.Unroll
12+
13+
import static org.gradle.testkit.runner.TaskOutcome.SUCCESS
14+
15+
class MultipleConfigurationsSameProcessorSpec extends PluginSpec {
16+
17+
@Override
18+
String getBuildFileName () {
19+
'build.gradle'
20+
}
21+
22+
@Override
23+
String getBuildFile (String projectDir) {
24+
"""\
25+
plugins {
26+
id 'io.openapiprocessor.openapi-processor'
27+
}
28+
29+
openapiProcessor {
30+
firstApi {
31+
processorName "one"
32+
processor project.files("${projectDir}/processor-one/build/libs/processor-one.jar")
33+
34+
apiPath "\${projectDir}/src/api/openapi-first.yaml"
35+
targetDir "\${buildDir}/first"
36+
other1 "value first"
37+
}
38+
39+
secondApi {
40+
processorName "one"
41+
processor project.files("${projectDir}/processor-one/build/libs/processor-one.jar")
42+
43+
apiPath "\${projectDir}/src/api/openapi-second.yaml"
44+
targetDir "\${buildDir}/second"
45+
other2 "value second"
46+
}
47+
}
48+
""".stripIndent ()
49+
}
50+
51+
@Override
52+
List<String> getGradleArguments () {
53+
['--stacktrace', 'processFirstApi', 'processSecondApi']
54+
}
55+
56+
@Unroll
57+
void "process task runs processor from gradle 7 (#gradleVersion)" () {
58+
when:
59+
def result = build(gradleVersion)
60+
61+
then:
62+
assertResult (result)
63+
64+
where:
65+
gradleVersion << Gradle.VERSIONS_7.reverse ()
66+
}
67+
68+
private void assertResult(BuildResult result) {
69+
assert result.task(':processFirstApi').outcome == SUCCESS
70+
assert result.output.contains("processor one did run !")
71+
72+
assert result.task(':processSecondApi').outcome == SUCCESS
73+
assert result.output.contains("processor one did run !")
74+
}
75+
76+
}

0 commit comments

Comments
 (0)