Merge pull request #643 from DataDog/tyler/move-ittests

Moves all ittests to be tests under dd-java-agent.
This commit is contained in:
Tyler Benson 2019-01-07 11:43:47 -08:00 committed by GitHub
commit 589556ca79
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
22 changed files with 58 additions and 85 deletions

View File

@ -1,56 +0,0 @@
// Set properties before any plugins get loaded
project.ext {
// Execute tests on all JVMs, even rare and outdated ones
integrationTests = true
}
apply from: "${rootDir}/gradle/java.gradle"
description = 'dd-java-agent-ittests'
evaluationDependsOn(':dd-java-agent:agent-tooling')
compileTestJava.dependsOn tasks.getByPath(':dd-java-agent:agent-tooling:testClasses')
dependencies {
testCompile project(':dd-trace-api')
testCompile project(':dd-trace-ot')
testCompile deps.opentracingMock
testCompile deps.testLogging
testCompile deps.guava
testCompile group: 'org.assertj', name: 'assertj-core', version: '2.9.+'
testCompile group: 'org.mockito', name: 'mockito-core', version: '2.19.0'
testCompile group: 'org.mongodb', name: 'mongo-java-driver', version: '3.4.2'
testCompile group: 'org.mongodb', name: 'mongodb-driver-async', version: '3.4.2'
// run embeded mongodb for integration testing
testCompile group: 'de.flapdoodle.embed', name: 'de.flapdoodle.embed.mongo', version: '1.50.5'
testCompile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.3'
testCompile group: 'com.squareup.okhttp3', name: 'okhttp', version: '3.6.0'
}
tasks.withType(Test) {
jvmArgs "-Ddd.writer.type=LogWriter", "-Ddd.service.name=java-app"
jvmArgs "-Ddatadog.slf4j.simpleLogger.defaultLogLevel=debug"
jvmArgs "-Dorg.slf4j.simpleLogger.defaultLogLevel=debug"
doFirst {
// Defining here to allow jacoco to be first on the command line.
jvmArgs "-javaagent:${project(':dd-java-agent').tasks.shadowJar.archivePath}"
}
testLogging {
events "started"
}
if (project.hasProperty("disableShadowRelocate") && disableShadowRelocate) {
exclude 'datadog/trace/agent/integration/classloading/ShadowPackageRenamingTest.class'
}
dependsOn project(':dd-java-agent').shadowJar
}
parent.subprojects.collect { it.tasks.withType(Test) } each {
test.shouldRunAfter it
}

View File

@ -1,16 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>
%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
</Pattern>
</layout>
</appender>
<root level="DEBUG">
<appender-ref ref="console"/>
</root>
</configuration>

View File

@ -5,8 +5,6 @@ plugins {
apply from: "${rootDir}/gradle/java.gradle" apply from: "${rootDir}/gradle/java.gradle"
excludedClassesConverage += ['datadog.trace.bootstrap.*']
dependencies { dependencies {
compile project(':dd-trace-api') compile project(':dd-trace-api')
compile deps.opentracing compile deps.opentracing

View File

@ -2,13 +2,17 @@ plugins {
id "com.github.johnrengelman.shadow" version "4.0.1" id "com.github.johnrengelman.shadow" version "4.0.1"
} }
// Set properties before any plugins get loaded
project.ext {
// Execute tests on all JVMs, even rare and outdated ones
integrationTests = true
}
description = 'dd-java-agent' description = 'dd-java-agent'
apply from: "${rootDir}/gradle/java.gradle" apply from: "${rootDir}/gradle/java.gradle"
apply from: "${rootDir}/gradle/publish.gradle" apply from: "${rootDir}/gradle/publish.gradle"
jacocoTestReport.dependsOn ':dd-java-agent-ittests:test'
/* /*
* Include subproject's shadowJar in the dd-java-agent jar. * Include subproject's shadowJar in the dd-java-agent jar.
* Note jarname must end in .zip, or its classes will be on the classpath of * Note jarname must end in .zip, or its classes will be on the classpath of
@ -84,3 +88,43 @@ shadowJar {
modifyPom { modifyPom {
dependencies.removeAll { true } dependencies.removeAll { true }
} }
dependencies {
testCompile project(':dd-trace-api')
testCompile project(':dd-trace-ot')
testCompile deps.opentracingMock
testCompile deps.testLogging
testCompile deps.guava
testCompile group: 'org.assertj', name: 'assertj-core', version: '2.9.+'
testCompile group: 'org.mockito', name: 'mockito-core', version: '2.19.0'
testCompile group: 'org.mongodb', name: 'mongo-java-driver', version: '3.4.2'
testCompile group: 'org.mongodb', name: 'mongodb-driver-async', version: '3.4.2'
// run embeded mongodb for integration testing
testCompile group: 'de.flapdoodle.embed', name: 'de.flapdoodle.embed.mongo', version: '1.50.5'
testCompile group: 'org.apache.httpcomponents', name: 'httpclient', version: '4.3'
testCompile group: 'com.squareup.okhttp3', name: 'okhttp', version: '3.6.0'
}
tasks.withType(Test) {
jvmArgs "-Ddd.writer.type=LogWriter", "-Ddd.service.name=java-app"
jvmArgs "-Ddatadog.slf4j.simpleLogger.defaultLogLevel=debug"
jvmArgs "-Dorg.slf4j.simpleLogger.defaultLogLevel=debug"
doFirst {
// Defining here to allow jacoco to be first on the command line.
jvmArgs "-javaagent:${shadowJar.archivePath}"
}
testLogging {
events "started"
}
if (project.hasProperty("disableShadowRelocate") && disableShadowRelocate) {
exclude 'datadog/trace/agent/integration/classloading/ShadowPackageRenamingTest.class'
}
dependsOn shadowJar
}

View File

@ -37,8 +37,6 @@ subprojects { subProj ->
} }
} }
excludedClassesConverage += ['datadog.trace.instrumentation.*']
dependencies { dependencies {
compile(project(':dd-java-agent:agent-tooling')) { compile(project(':dd-java-agent:agent-tooling')) {
exclude module: ':dd-java-agent:agent-bootstrap' exclude module: ':dd-java-agent:agent-bootstrap'

View File

@ -1,8 +1,6 @@
apply from: "${rootDir}/gradle/java.gradle" apply from: "${rootDir}/gradle/java.gradle"
apply from: "${rootDir}/gradle/test-with-scala.gradle" apply from: "${rootDir}/gradle/test-with-scala.gradle"
excludedClassesConverage += ['*']
dependencies { dependencies {
testCompile project(':dd-trace-api') testCompile project(':dd-trace-api')
testCompile project(':dd-trace-ot') testCompile project(':dd-trace-ot')

View File

@ -3,7 +3,13 @@ apply plugin: 'groovy'
apply from: "$rootDir/gradle/checkstyle.gradle" apply from: "$rootDir/gradle/checkstyle.gradle"
apply from: "$rootDir/gradle/codenarc.gradle" apply from: "$rootDir/gradle/codenarc.gradle"
apply from: "$rootDir/gradle/jacoco.gradle"
def applyCodeCoverage = !(project.plugins.hasPlugin('com.github.johnrengelman.shadow')
|| project.path.startsWith(":dd-java-agent:instrumentation:"))
if (applyCodeCoverage) {
apply from: "$rootDir/gradle/jacoco.gradle"
}
sourceCompatibility = 1.7 sourceCompatibility = 1.7
targetCompatibility = 1.7 targetCompatibility = 1.7
@ -230,9 +236,11 @@ for (def env : System.getenv().entrySet()) {
description "Runs $clonedTask.name under java ${javaName}" description "Runs $clonedTask.name under java ${javaName}"
executable = javaPath executable = javaPath
onlyIf { isJavaVersionAllowed(javaVersion) && isTestingEnabled(javaName) } onlyIf { isJavaVersionAllowed(javaVersion) && isTestingEnabled(javaName) }
jacoco { if (applyCodeCoverage) {
// Disable jacoco for additional JVM tests to speed things up a bit jacoco {
enabled = false // Disable jacoco for additional JVM tests to speed things up a bit
enabled = false
}
} }
} }

View File

@ -16,7 +16,6 @@ include ':dd-java-agent:agent-jmxfetch'
// misc // misc
include ':dd-java-agent:testing' include ':dd-java-agent:testing'
include ':dd-java-agent-ittests'
// instrumentation: // instrumentation:
include ':dd-java-agent:instrumentation:akka-http-10.0' include ':dd-java-agent:instrumentation:akka-http-10.0'