mirror of
https://github.com/corda/corda.git
synced 2025-02-05 10:39:13 +00:00
232db9a1fd
This moves a lot of the test support code into its own package which is only imported for tests, so it's not shipped as a part of core Corda. The node currently depends on this support code to compile, although future work could try to separate this out. This change highlights that parts of production code is dependent on test elements (i.e. dummy keys), and makes it harder for such accidental crosses to occur later. An integration test category is also added as part of this work, to contribute towards COR-345.
120 lines
4.4 KiB
Groovy
120 lines
4.4 KiB
Groovy
apply plugin: 'kotlin'
|
|
apply plugin: QuasarPlugin
|
|
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
maven {
|
|
url 'http://oss.sonatype.org/content/repositories/snapshots'
|
|
}
|
|
jcenter()
|
|
maven {
|
|
url 'https://dl.bintray.com/kotlin/exposed'
|
|
}
|
|
}
|
|
|
|
|
|
//noinspection GroovyAssignabilityCheck
|
|
configurations {
|
|
|
|
// we don't want isolated.jar in classPath, since we want to test jar being dynamically loaded as an attachment
|
|
runtime.exclude module: 'isolated'
|
|
}
|
|
|
|
sourceSets {
|
|
test {
|
|
resources {
|
|
srcDir "../config/test"
|
|
}
|
|
}
|
|
}
|
|
|
|
// To find potential version conflicts, run "gradle htmlDependencyReport" and then look in
|
|
// build/reports/project/dependencies/index.html for green highlighted parts of the tree.
|
|
|
|
dependencies {
|
|
compile project(':contracts')
|
|
compile project(':test-utils')
|
|
|
|
compile "com.google.code.findbugs:jsr305:3.0.1"
|
|
|
|
// Log4J: logging framework (with SLF4J bindings)
|
|
compile "org.apache.logging.log4j:log4j-slf4j-impl:${log4j_version}"
|
|
compile "org.apache.logging.log4j:log4j-core:${log4j_version}"
|
|
|
|
compile "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
|
|
compile "org.jetbrains.kotlin:kotlin-reflect:$kotlin_version"
|
|
compile "org.jetbrains.kotlin:kotlin-test:$kotlin_version"
|
|
compile "org.jetbrains.kotlinx:kotlinx-support-jdk8:0.2"
|
|
|
|
compile "com.google.guava:guava:19.0"
|
|
|
|
// JOpt: for command line flags.
|
|
compile "net.sf.jopt-simple:jopt-simple:5.0.2"
|
|
|
|
// Artemis: for reliable p2p message queues.
|
|
compile "org.apache.activemq:artemis-server:${artemis_version}"
|
|
compile "org.apache.activemq:artemis-core-client:${artemis_version}"
|
|
runtime "org.apache.activemq:artemis-amqp-protocol:${artemis_version}"
|
|
|
|
// JAnsi: for drawing things to the terminal in nicely coloured ways.
|
|
compile "org.fusesource.jansi:jansi:1.13"
|
|
|
|
// GraphStream: For visualisation
|
|
compile "org.graphstream:gs-core:1.3"
|
|
compile "org.graphstream:gs-ui:1.3"
|
|
compile("com.intellij:forms_rt:7.0.3") {
|
|
exclude group: "asm"
|
|
}
|
|
|
|
// Force commons logging to version 1.2 to override Artemis, which pulls in 1.1.3 (ARTEMIS-424)
|
|
compile "commons-logging:commons-logging:1.2"
|
|
|
|
// Web stuff: for HTTP[S] servlets
|
|
compile "org.eclipse.jetty:jetty-servlet:${jetty_version}"
|
|
compile "org.eclipse.jetty:jetty-webapp:${jetty_version}"
|
|
compile "javax.servlet:javax.servlet-api:3.1.0"
|
|
compile "org.jolokia:jolokia-agent-war:2.0.0-M1"
|
|
compile "commons-fileupload:commons-fileupload:1.3.2"
|
|
|
|
// Jersey for JAX-RS implementation for use in Jetty
|
|
compile "org.glassfish.jersey.core:jersey-server:${jersey_version}"
|
|
compile "org.glassfish.jersey.containers:jersey-container-servlet-core:${jersey_version}"
|
|
compile "org.glassfish.jersey.containers:jersey-container-jetty-http:${jersey_version}"
|
|
// NOTE there is a Jackson version clash between jersey-media-json-jackson (v2.5.4) and jackson-module-kotlin (v.2.5.5)
|
|
// Have not found an Issue in the issue tracker for Jersey for this issue
|
|
compile ("org.glassfish.jersey.media:jersey-media-json-jackson:${jersey_version}") {
|
|
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-annotations'
|
|
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'
|
|
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-core'
|
|
}
|
|
compile ("com.fasterxml.jackson.module:jackson-module-kotlin:${jackson_version}") {
|
|
exclude group: 'com.fasterxml.jackson.core', module: 'jackson-annotations'
|
|
}
|
|
compile "com.fasterxml.jackson.core:jackson-annotations:${jackson_version}"
|
|
|
|
// Coda Hale's Metrics: for monitoring of key statistics
|
|
compile "io.dropwizard.metrics:metrics-core:3.1.2"
|
|
|
|
// JimFS: in memory java.nio filesystem. Used for test and simulation utilities.
|
|
compile "com.google.jimfs:jimfs:1.1"
|
|
|
|
// TypeSafe Config: for simple and human friendly config files.
|
|
compile "com.typesafe:config:1.3.0"
|
|
|
|
// Unit testing helpers.
|
|
testCompile 'junit:junit:4.12'
|
|
testCompile "org.assertj:assertj-core:${assertj_version}"
|
|
|
|
// For H2 database support in persistence
|
|
compile "com.h2database:h2:1.3.176"
|
|
|
|
// Exposed: Kotlin SQL library - under evaluation
|
|
compile "org.jetbrains.exposed:exposed:0.5.0"
|
|
|
|
// SQL connection pooling library
|
|
compile "com.zaxxer:HikariCP:2.4.7"
|
|
}
|
|
|
|
quasarScan.dependsOn('classes', ':core:classes', ':contracts:classes')
|