THRIFT-4949: Improve HTTP/1 server test case
Client: java
This closes #1886.
diff --git a/lib/java/gradle/environment.gradle b/lib/java/gradle/environment.gradle
index 45fa63a..965a908 100644
--- a/lib/java/gradle/environment.gradle
+++ b/lib/java/gradle/environment.gradle
@@ -44,7 +44,8 @@
// Versions used in this project
ext.httpclientVersion = property('httpclient.version')
ext.httpcoreVersion = property('httpcore.version')
-ext.servletVersion = property('servlet.version')
+//ext.servletVersion = property('servlet.version')
+ext.tomcatEmbedVersion = property('tomcat.embed.version')
ext.slf4jVersion = property('slf4j.version')
ext.junitVersion = property('junit.version')
ext.mockitoVersion = property('mockito.version')
@@ -66,7 +67,8 @@
compile "org.slf4j:slf4j-api:${slf4jVersion}"
compile "org.apache.httpcomponents:httpclient:${httpclientVersion}"
compile "org.apache.httpcomponents:httpcore:${httpcoreVersion}"
- compile "javax.servlet:servlet-api:${servletVersion}"
+ //compile "javax.servlet:servlet-api:${servletVersion}"
+ compile "org.apache.tomcat.embed:tomcat-embed-core:${tomcatEmbedVersion}"
compile "javax.annotation:javax.annotation-api:${javaxAnnotationVersion}"
testCompile "junit:junit:${junitVersion}"
diff --git a/lib/java/gradle/functionalTests.gradle b/lib/java/gradle/functionalTests.gradle
index c420d12..6a388a6 100644
--- a/lib/java/gradle/functionalTests.gradle
+++ b/lib/java/gradle/functionalTests.gradle
@@ -34,6 +34,7 @@
include '**/test/TestClient.java'
include '**/test/TestServer.java'
include '**/test/TestNonblockingServer.java'
+ include '**/test/TestTServletServer.java'
}
}
}
@@ -55,7 +56,7 @@
shadowJar {
description = 'Assemble a test JAR file for cross-check execution'
// make sure the runners are created when this runs
- dependsOn 'generateRunnerScriptForClient', 'generateRunnerScriptForServer', 'generateRunnerScriptForNonblockingServer'
+ dependsOn 'generateRunnerScriptForClient', 'generateRunnerScriptForServer', 'generateRunnerScriptForNonblockingServer', 'generateRunnerScriptForTServletServer'
baseName = 'functionalTest'
destinationDir = file("$buildDir/functionalTestJar")
@@ -153,3 +154,24 @@
serverFile.setExecutable(true, false)
}
}
+
+task generateRunnerScriptForTServletServer(group: 'Build') {
+ description = 'Generate a runner script for cross-check tests with TestTServletServer'
+
+ def serverFile = file("$buildDir/runservletserver${scriptExt}")
+
+ def runServerText = """\
+${scriptHead}
+
+"${javaExe}" -cp "$jarPath" "-Djavax.net.ssl.keyStore=$keyStore" -Djavax.net.ssl.keyStorePassword=thrift org.apache.thrift.test.TestTServletServer $args
+"""
+
+ inputs.property 'runServerText', runServerText
+ outputs.file serverFile
+
+ doLast {
+ serverFile.parentFile.mkdirs()
+ serverFile.text = runServerText
+ serverFile.setExecutable(true, false)
+ }
+}
diff --git a/lib/java/gradle/sourceConfiguration.gradle b/lib/java/gradle/sourceConfiguration.gradle
index 8dd0331..3bd432a 100644
--- a/lib/java/gradle/sourceConfiguration.gradle
+++ b/lib/java/gradle/sourceConfiguration.gradle
@@ -34,6 +34,7 @@
exclude '**/test/TestClient.java'
exclude '**/test/TestServer.java'
exclude '**/test/TestNonblockingServer.java'
+ exclude '**/test/TestTServletServer.java'
}
resources {
srcDir 'test'