plugins {
    id 'com.android.library'
    id 'androidx.benchmark'
    id 'org.jetbrains.kotlin.android'
}

android {
    namespace 'com.vitorpamplona.amethyst.benchmark'
    compileSdk 34

    defaultConfig {
        // Enable measuring on an emulator, or devices with low battery
        testInstrumentationRunnerArguments["androidx.benchmark.suppressErrors"] = "EMULATOR,LOW-BATTERY"
    }

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_17
        targetCompatibility JavaVersion.VERSION_17
    }
    kotlinOptions {
        jvmTarget = '17'
    }

    defaultConfig {
        minSdk 26
        targetSdk 34

        testInstrumentationRunner 'androidx.benchmark.junit4.AndroidBenchmarkRunner'
    }

    testBuildType = "release"
    buildTypes {
        debug {
            // Since debuggable can"t be modified by gradle for library modules,
            // it must be done in a manifest - see src/androidTest/AndroidManifest.xml
            minifyEnabled true
            proguardFiles getDefaultProguardFile("proguard-android-optimize.txt"), "benchmark-proguard-rules.pro"
        }
        release {
            isDefault = true
        }
    }
}

dependencies {
    androidTestImplementation 'androidx.test:runner:1.5.2'
    androidTestImplementation 'androidx.test.ext:junit:1.1.5'
    androidTestImplementation 'junit:junit:4.13.2'
    androidTestImplementation 'androidx.benchmark:benchmark-junit4:1.2.2'
    androidTestImplementation project(path: ':quartz')

    // Add your dependencies here. Note that you cannot benchmark code
    // in an app module this way - you will need to move any code you
    // want to benchmark to a library module:
    // https://developer.android.com/studio/projects/android-library#Convert
}