Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import de.mannodermaus.gradle.plugins.junit5.junitPlatform
- import org.jetbrains.kotlin.config.KotlinCompilerVersion
- import org.jetbrains.kotlin.gradle.plugin.getKotlinPluginVersion
- import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
- plugins {
- id("com.android.application")
- id("de.mannodermaus.android-junit5")
- id("com.google.gms.google-services")
- kotlin("android.extensions")
- kotlin("android")
- kotlin("kapt")
- }
- val buildRelease = "release"
- val buildDebug = "debug"
- android {
- compileSdkVersion(28)
- defaultConfig {
- applicationId = "com.company.app"
- minSdkVersion(23)
- targetSdkVersion(28)
- versionCode = 158
- versionName = "5.1.4"
- multiDexEnabled = true
- testInstrumentationRunner = "androidx.test.runner.AndroidJunitRunner"
- }
- buildTypes {
- getByName(buildRelease) {
- isMinifyEnabled = true
- proguardFiles(
- getDefaultProguardFile("proguard-android.txt"),
- "proguard-rules.pro")
- signingConfig = signingConfigs.getByName(buildRelease)
- }
- getByName(buildDebug) {
- isMinifyEnabled = false
- isTestCoverageEnabled = true
- applicationIdSuffix = ".debug"
- isDebuggable = true
- }
- val dimensionDefault = "default"
- val flavorMock = "mock"
- val flavorProduction = "prod"
- flavorDimensions(dimensionDefault)
- productFlavors {
- create(flavorMock) {
- setDimension(dimensionDefault)
- }
- create(flavorProduction) {
- setDimension(dimensionDefault)
- }
- }
- variantFilter {
- if (buildType.name == buildRelease && flavors[0].name == flavorMock) {
- setIgnore(true)
- }
- }
- sourceSets {
- getByName("main").java.srcDirs("src/main/kotlin")
- getByName("test").java.srcDirs("src/test/kotlin")
- getByName("mock").java.srcDirs("src/mock/kotlin")
- getByName("prod").java.srcDirs("src/prod/kotlin")
- }
- kapt {
- // generateStubs = true
- // correctErrorTypes = true
- }
- repositories {
- google()
- mavenCentral()
- maven {
- url = uri("mint-plugin-repo-5.2.1")
- }
- }
- }
- testOptions {
- junitPlatform {
- filters {
- includeEngines("spek2")
- }
- }
- }
- // Configure Java 8
- compileOptions {
- sourceCompatibility = JavaVersion.VERSION_1_8
- targetCompatibility = JavaVersion.VERSION_1_8
- }
- }
- dependencies {
- implementation(fileTree("libs") { include("*.jar", "*.aar") })
- implementation(project(":expandablerecyclerview"))
- implementation("androidx.appcompat:appcompat:1.0.2")
- implementation("com.google.android.material:material:1.0.0")
- implementation("androidx.constraintlayout:constraintlayout:2.0.0-alpha3")
- implementation("com.google.firebase:firebase-core:16.0.6")
- implementation("com.google.firebase:firebase-messaging:17.3.4")
- implementation("android.arch.work:work-runtime:1.0.0-beta02") {
- exclude("com.google.guava", "listenablefuture")
- }
- implementation("androidx.room:room-compiler:2.0.0")
- annotationProcessor("androidx.room:room-compiler:2.0.0")
- implementation("androidx.room:room-rxjava2:2.0.0")
- implementation(kotlin("stdlib", KotlinCompilerVersion.VERSION))
- implementation("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.1.1")
- implementation("io.reactivex.rxjava2:rxjava:2.2.4")
- implementation("io.reactivex.rxjava2:rxandroid:2.1.0")
- implementation("com.jakewharton.rxrelay2:rxrelay:2.1.0")
- implementation("com.squareup.okhttp3:logging-interceptor:3.11.0")
- implementation("com.squareup.retrofit2:retrofit:2.5.0")
- implementation("com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2")
- implementation("com.squareup.retrofit2:converter-moshi:2.5.0")
- implementation("com.google.dagger:dagger:2.17")
- kapt("com.google.dagger:dagger-compiler:2.17")
- implementation("com.bluelinelabs:conductor:2.1.5")
- implementation("com.jakewharton.timber:timber:4.6.0")
- implementation("com.splunk:mint-android-sdk:5.2.1")
- implementation("com.journeyapps:zxing-android-embedded:3.5.0@aar")
- implementation("com.google.zxing:core:3.3.0")
- // junit 4 backwards compat
- testImplementation("junit:junit:4.12")
- testImplementation("org.junit.vintage:junit-vintage-engine:5.3.1")
- // junit 5 for spek
- testImplementation("org.junit.jupiter:junit-jupiter-api:5.3.1")
- testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:5.3.1")
- testImplementation("org.spekframework.spek2:spek-dsl-jvm:2.0.0-rc.1")
- testImplementation("org.spekframework.spek2:spek-runner-junit5:2.0.0-rc.1")
- testImplementation(kotlin("reflect", KotlinCompilerVersion.VERSION))
- testImplementation("org.mockito:mockito-core:2.23.0")
- testImplementation("com.nhaarman.mockitokotlin2:mockito-kotlin:2.1.0")
- testImplementation("org.robolectric:robolectric:3.8")
- "mockImplementation"("com.squareup.retrofit2:retrofit-mock:2.2.0") {
- exclude("com.squareup.okio", "okio")
- exclude("com.squareup.okhttp3", "okhttp")
- }
- }
- // configuring Java 8 for kotlin
- tasks.withType(KotlinCompile::class).configureEach {
- kotlinOptions {
- jvmTarget = "1.8"
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement