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"
excludedClassesConverage += ['datadog.trace.bootstrap.*']
dependencies {
compile project(':dd-trace-api')
compile deps.opentracing

View File

@ -2,13 +2,17 @@ plugins {
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'
apply from: "${rootDir}/gradle/java.gradle"
apply from: "${rootDir}/gradle/publish.gradle"
jacocoTestReport.dependsOn ':dd-java-agent-ittests:test'
/*
* 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
@ -84,3 +88,43 @@ shadowJar {
modifyPom {
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 {
compile(project(':dd-java-agent:agent-tooling')) {
exclude module: ':dd-java-agent:agent-bootstrap'

View File

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

View File

@ -3,7 +3,13 @@ apply plugin: 'groovy'
apply from: "$rootDir/gradle/checkstyle.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
targetCompatibility = 1.7
@ -230,11 +236,13 @@ for (def env : System.getenv().entrySet()) {
description "Runs $clonedTask.name under java ${javaName}"
executable = javaPath
onlyIf { isJavaVersionAllowed(javaVersion) && isTestingEnabled(javaName) }
if (applyCodeCoverage) {
jacoco {
// Disable jacoco for additional JVM tests to speed things up a bit
enabled = false
}
}
}
parentTask.dependsOn newTask
}

View File

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