@@ -14,6 +14,7 @@ import org.gradle.testkit.runner.BuildResult
1414import org.gradle.testkit.runner.TaskOutcome
1515
1616class AbstractTransportVersionFuncTest extends AbstractGradleFuncTest {
17+
1718 def javaResource (String project , String path , String content ) {
1819 file(" ${ project} /src/main/resources/${ path} " ). withWriter { writer ->
1920 writer << content
@@ -45,10 +46,18 @@ class AbstractTransportVersionFuncTest extends AbstractGradleFuncTest {
4546 return referableAndReferencedTransportVersion(name, ids, " Test${ name.capitalize()} " )
4647 }
4748
48- def referableAndReferencedTransportVersion (String name , String ids , String classname ) {
49+ def referencedTransportVersion (String name ) {
50+ referencedTransportVersion(name, " Test${ name.capitalize()} " )
51+ }
52+
53+ def referencedTransportVersion (String name , String classname ) {
4954 javaSource(" myserver" , " org.elasticsearch" , classname, " " , """
5055 static final TransportVersion usage = TransportVersion.fromName("${ name} ");
5156 """ )
57+ }
58+
59+ def referableAndReferencedTransportVersion (String name , String ids , String classname ) {
60+ referencedTransportVersion(name, classname)
5261 referableTransportVersion(name, ids)
5362 }
5463
@@ -74,6 +83,20 @@ class AbstractTransportVersionFuncTest extends AbstractGradleFuncTest {
7483 assertOutputContains(result. output, expectedOutput)
7584 }
7685
86+ void assertReferableDefinition (String name , String content ) {
87+ File definitionFile = file(" myserver/src/main/resources/transport/definitions/referable/${ name} .csv" )
88+ assert definitionFile. exists()
89+ assert definitionFile. text. strip() == content
90+ }
91+
92+ void assertReferableDefinitionDoesNotExist (String name ) {
93+ assert file(" myserver/src/main/resources/transport/definitions/referable/${ name} .csv" ). exists() == false
94+ }
95+
96+ void assertUpperBound (String name , String content ) {
97+ assert file(" myserver/src/main/resources/transport/upper_bounds/${ name} .csv" ). text. strip() == content
98+ }
99+
77100 def setup () {
78101 configurationCacheCompatible = false
79102 internalBuild()
@@ -86,12 +109,17 @@ class AbstractTransportVersionFuncTest extends AbstractGradleFuncTest {
86109 apply plugin: 'java-library'
87110 apply plugin: 'elasticsearch.transport-version-references'
88111 apply plugin: 'elasticsearch.transport-version-resources'
112+
113+ tasks.named('generateTransportVersionDefinition') {
114+ currentUpperBoundName = '9.2'
115+ }
89116 """
90117 referableTransportVersion(" existing_91" , " 8012000" )
91118 referableTransportVersion(" existing_92" , " 8123000,8012001" )
92119 unreferableTransportVersion(" initial_9_0_0" , " 8000000" )
93120 transportVersionUpperBound(" 9.2" , " existing_92" , " 8123000" )
94121 transportVersionUpperBound(" 9.1" , " existing_92" , " 8012001" )
122+ transportVersionUpperBound(" 9.0" , " initial_9_0_0" , " 8000000" )
95123 // a mock version of TransportVersion, just here so we can compile Dummy.java et al
96124 javaSource(" myserver" , " org.elasticsearch" , " TransportVersion" , " " , """
97125 public static TransportVersion fromName(String name) {
0 commit comments