aboutsummaryrefslogtreecommitdiffstats
path: root/config
diff options
context:
space:
mode:
authorKenny Root <kenny@the-b.org>2015-07-24 16:13:51 -0700
committerKenny Root <kenny@the-b.org>2015-07-24 16:13:51 -0700
commitd3c4f49d68ba97f43aacbe86d4ece7546eee4f15 (patch)
tree6cfe6093f69737af10bc5437acc10942795f2b57 /config
parent739337624a5e69221a998cf10b1fd34fcc5ecd2d (diff)
parent571d61b6b55bc3eb9540e17973d93cc15b22da23 (diff)
downloadconnectbot-d3c4f49d68ba97f43aacbe86d4ece7546eee4f15.tar.gz
connectbot-d3c4f49d68ba97f43aacbe86d4ece7546eee4f15.tar.bz2
connectbot-d3c4f49d68ba97f43aacbe86d4ece7546eee4f15.zip
Merge pull request #105 from kruton/master
Update to library-based build
Diffstat (limited to 'config')
-rw-r--r--config/jacoco.gradle41
1 files changed, 41 insertions, 0 deletions
diff --git a/config/jacoco.gradle b/config/jacoco.gradle
new file mode 100644
index 0000000..c603349
--- /dev/null
+++ b/config/jacoco.gradle
@@ -0,0 +1,41 @@
+apply plugin: 'jacoco'
+
+// By default, Android Gradle plugin uses JaCoCo version 0.7.1, which works great in JUnit on the JVM.
+// But that will fail on Android Lollipop/ART runtime, which requires 0.7.3 or higher.
+if (rootProject.hasProperty('jacocoVersion')) {
+ android.jacoco.version = rootProject.property('jacocoVersion')
+ jacoco.toolVersion = rootProject.property('jacocoVersion')
+} else {
+ println "Using the default JaCoCo version of: ${jacoco.toolVersion}"
+}
+
+// The built-in jacoco plugin automatically applies itself to all Test tasks
+tasks.withType(Test).whenTaskAdded {
+ it.jacoco.append = false
+ it.jacoco.classDumpFile = file("${project.buildDir}/jacoco/dump")
+}
+
+// These tasks are for generating the coverage report after JUnit+robolectric tests have executed
+tasks.create(name: "jacocoTestDebugReport", type: JacocoReport, dependsOn: "testDebug") {
+ group = "Reporting"
+ description = "Generate Jacoco coverage reports"
+
+ classDirectories = fileTree(
+ dir: "${project.buildDir}/intermediates/classes/debug/",
+ excludes: ['**/R.class',
+ '**/R$*.class',
+ '**/*$ViewInjector*.*',
+ '**/BuildConfig.*',
+ '**/Manifest*.*']
+ )
+
+ sourceDirectories = files("src/main/java", "src/debug/java")
+ executionData = files("${project.buildDir}/jacoco/testDebug.exec")
+
+ reports {
+ xml.enabled = true
+ html.enabled = true
+ }
+}
+
+coveralls.jacocoReportPath = "${project.buildDir}/reports/jacoco/jacocoTestDebugReport/jacocoTestDebugReport.xml" \ No newline at end of file