apply plugin: 'android' sourceSets { testLocal { java.srcDir file('src/test/java') resources.srcDir file('src/test/resources') } } dependencies { compile 'com.android.support:support-v4:19.0.1' compile 'com.android.support:appcompat-v7:19.0.1' compile project(':OpenPGP-Keychain-API:libraries:openpgp-api-library') compile project(':OpenPGP-Keychain-API:libraries:openkeychain-api-library') compile project(':libraries:HtmlTextView') compile project(':libraries:StickyListHeaders:library') compile project(':libraries:AndroidBootstrap') compile project(':libraries:zxing') compile project(':libraries:zxing-android-integration') compile project(':libraries:spongycastle:core') compile project(':libraries:spongycastle:pg') compile project(':libraries:spongycastle:pkix') compile project(':libraries:spongycastle:prov') compile project(':libraries:Android-AppMsg:library') // Dependencies for the `testLocal` task, make sure to list all your global dependencies here as well testLocalCompile 'junit:junit:4.11' testLocalCompile 'org.robolectric:robolectric:2.1.+' testLocalCompile 'com.google.android:android:4.1.1.4' testLocalCompile 'com.android.support:support-v4:19.0.1' testLocalCompile 'com.android.support:appcompat-v7:19.0.1' testLocalCompile project(':OpenPGP-Keychain-API:libraries:openpgp-api-library') testLocalCompile project(':OpenPGP-Keychain-API:libraries:openkeychain-api-library') testLocalCompile project(':libraries:HtmlTextView') testLocalCompile project(':libraries:StickyListHeaders:library') testLocalCompile project(':libraries:AndroidBootstrap') testLocalCompile project(':libraries:zxing') testLocalCompile project(':libraries:zxing-android-integration') testLocalCompile project(':libraries:spongycastle:core') testLocalCompile project(':libraries:spongycastle:pg') testLocalCompile project(':libraries:spongycastle:pkix') testLocalCompile project(':libraries:spongycastle:prov') testLocalCompile project(':libraries:Android-AppMsg:library') } android { compileSdkVersion 19 buildToolsVersion "19.0.3" defaultConfig { minSdkVersion 9 targetSdkVersion 19 } /* * To sign release build, create file gradle.properties in ~/.gradle/ with this content: * * signingStoreLocation=/home/key.store * signingStorePassword=xxx * signingKeyAlias=alias * signingKeyPassword=xxx */ if (project.hasProperty('signingStoreLocation') && project.hasProperty('signingStorePassword') && project.hasProperty('signingKeyAlias') && project.hasProperty('signingKeyPassword')) { println "Found sign properties in gradle.properties! Signing build…" signingConfigs { release { storeFile file(signingStoreLocation) storePassword signingStorePassword keyAlias signingKeyAlias keyPassword signingKeyPassword } } buildTypes.release.signingConfig = signingConfigs.release } else { buildTypes.release.signingConfig = null } // Do not abort build if lint finds errors lintOptions { abortOnError false htmlReport true htmlOutput file("lint-report.html") } } task localTest(type: Test, dependsOn: assemble) { testClassesDir = sourceSets.testLocal.output.classesDir android.sourceSets.main.java.srcDirs.each { dir -> def buildDir = dir.getAbsolutePath().split('/') buildDir = (buildDir[0..(buildDir.length - 4)] + ['build', 'classes', 'debug']).join('/') sourceSets.testLocal.compileClasspath += files(buildDir) sourceSets.testLocal.runtimeClasspath += files(buildDir) } classpath = sourceSets.testLocal.runtimeClasspath } check.dependsOn localTest