Added cobertura plugin to compute code coverage by spock tests

A new task "cobertura" is added to generate the code coverage report.

Also, fixed the unusedClassImports error by CodeNarc.

References #175
This commit is contained in:
Mahesh V Kelkar 2015-05-05 15:34:19 -04:00
parent 077e6f1d6d
commit c565d8c358
9 changed files with 23 additions and 24 deletions

View File

@ -4,12 +4,14 @@ plugins {
id 'com.github.johnrengelman.shadow' version '1.2.0'
id "com.github.samueltbrown.cucumber" version "0.8"
id "com.github.tkruse.groovysh" version "1.0.4"
id "net.saliman.cobertura" version "2.2.8"
}
apply plugin: 'eclipse'
apply plugin: 'groovy'
apply plugin: 'application'
apply plugin: 'codenarc'
apply plugin: 'cobertura'
version = '0.3.0'
group = 'com.github.lookout'
@ -90,6 +92,17 @@ codenarc {
configFile = file('gradle/codenarc/codenarc.xml')
}
cobertura {
coverageSourceDirs = [sourceSets.main.groovy.srcDirs]
coverageTestTasks {
project.tasks.matching {
it.name.contains("test")
}
}
coverageIgnoreTrivial = true
coverageIgnores = ['org.slf4j.Logger.*']
}
cucumber {
formats = ['pretty',
// .toString() required here to make sure we convert a Groovy

View File

@ -1,6 +1,5 @@
package deploydb
import deploydb.models.Artifact
import javax.ws.rs.core.Response
class IntegrationModelHelper {

View File

@ -2,7 +2,6 @@ package deploydb
import deploydb.dao.FlowDAO
import deploydb.dao.ModelConfigDAO
import deploydb.models.Flow
import spock.lang.*
class WorkFlowSpec extends Specification {

View File

@ -4,7 +4,6 @@ import com.google.common.base.Optional
import deploydb.IntegrationModelHelper
import deploydb.IntegrationTestAppHelper
import deploydb.ModelConfigHelper
import dropwizardintegtest.TestLdapServer
import io.dropwizard.auth.basic.BasicCredentials
import javax.naming.AuthenticationException
import javax.naming.NamingEnumeration
@ -14,7 +13,6 @@ import javax.naming.directory.InitialDirContext
import javax.naming.directory.SearchResult
import spock.lang.*
import javax.validation.OverridesAttribute
class LdapAuthenticatorSpec extends Specification {

View File

@ -1,12 +1,10 @@
package deploydb.models
import spock.lang.*
import com.fasterxml.jackson.annotation.JsonProperty
import io.dropwizard.configuration.ConfigurationParsingException
import io.dropwizard.configuration.ConfigurationValidationException
import deploydb.ModelLoader
import deploydb.registry.ModelRegistry
import deploydb.models.Environment
import spock.lang.*
class EnvironmentSpec extends Specification {
def "ensure Environment object can be instantiated"() {

View File

@ -1,12 +1,11 @@
package deploydb.models
import spock.lang.*
import com.fasterxml.jackson.annotation.JsonProperty
import io.dropwizard.configuration.ConfigurationParsingException
import io.dropwizard.configuration.ConfigurationValidationException
import deploydb.ModelLoader
import deploydb.registry.ModelRegistry
import deploydb.models.Service
import spock.lang.*
class ServiceSpec extends Specification {
def "ensure Service object can be instantiated"() {

View File

@ -5,9 +5,9 @@ import deploydb.auth.User
import deploydb.registry.ModelRegistry
import io.dropwizard.configuration.ConfigurationParsingException
import io.dropwizard.configuration.ConfigurationValidationException
import spock.lang.Ignore
import spock.lang.Specification
class PromotionSpec extends Specification {
def "ensure Promotion object can be instantiated"() {
when:

View File

@ -1,17 +1,10 @@
package deploydb.models
import spock.lang.*
import com.fasterxml.jackson.annotation.JsonProperty
import io.dropwizard.configuration.ConfigurationParsingException
import io.dropwizard.configuration.ConfigurationValidationException
import deploydb.ModelLoader
import deploydb.registry.ModelRegistry
import deploydb.models.Webhook.Webhook
import deploydb.models.Webhook.Deployment
import spock.lang.*
import org.slf4j.Logger
import org.slf4j.LoggerFactory
class WebhookSpec extends Specification {
def "ensure Webhook object can be instantiated"() {

View File

@ -6,17 +6,17 @@ import deploydb.Status
import deploydb.WorkFlow
import deploydb.auth.User
import deploydb.models.Artifact
import io.dropwizard.testing.junit.ResourceTestRule
import javax.ws.rs.client.Client
import org.junit.Rule
import spock.lang.*
import deploydb.models.Deployment
import deploydb.dao.DeploymentDAO
import io.dropwizard.auth.Auth
import io.dropwizard.auth.AuthFactory
import io.dropwizard.auth.Authenticator
import io.dropwizard.auth.basic.BasicAuthFactory
import io.dropwizard.auth.basic.BasicCredentials
import io.dropwizard.testing.junit.ResourceTestRule
import javax.ws.rs.client.Client
import org.junit.Rule
import spock.lang.*
class DeploymentResourceSpec extends Specification {
def app = new DeployDBApp()