apply plugin: 'com.android.library'
apply plugin: 'kotlin-android'
apply plugin: 'jacoco'
apply from: "${project.rootDir}/gradle_scripts/code_quality.gradle"


android {
    compileSdkVersion versions.compileSdk

    defaultConfig {
        testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
        minSdkVersion versions.minSdk
        targetSdkVersion versions.targetSdk
    }

    kotlinOptions {
        jvmTarget = "1.8"
    }

    compileOptions {
        // Sets Java compatibility to Java 8
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    sourceSets {
        main.java.srcDirs += "${projectDir}/src/main/kotlin"
        test.java.srcDirs += "${projectDir}/src/test/kotlin"
        test.java.srcDirs += "${projectDir}/src/integrationTest/kotlin"
        test.resources.srcDirs += "${projectDir}/src/integrationTest/resources"
    }

    buildTypes {
        debug {
            minifyEnabled false
            debuggable true
        }
        release {
            minifyEnabled false
        }
    }

    buildFeatures {
        buildConfig = false
    }
}


tasks.withType(Test) {
    useJUnitPlatform()
    jacoco {
        includeNoLocationClasses = true
        excludes += jacocoExclude
    }
}

dependencies {
    api other.kotlinStdlib

    testImplementation testing.junit
    testRuntimeOnly testing.junitVintage
}

jacoco {
    toolVersion(versions.jacoco)
}

ext {
    jacocoExclude = ['jdk.internal.*']
}

