/* * ImageToolbox is an image editor for android * Copyright (c) 2024 T8RIN (Malik Mukhametzyanov) * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * You should have received a copy of the Apache License * along with this program. If not, see . */ @file:Suppress("UnstableApiUsage") import org.jetbrains.kotlin.gradle.dsl.JvmTarget plugins { id("com.android.test") id("org.jetbrains.kotlin.android") id("androidx.baselineprofile") } android { namespace = "ru.tech.imageresizershrinker.benchmark" compileSdk = libs.versions.androidCompileSdk.get().toIntOrNull() defaultConfig { minSdk = libs.versions.androidMinSdk.get().toIntOrNull() targetSdk = libs.versions.androidTargetSdk.get().toIntOrNull() testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } compileOptions { sourceCompatibility = JavaVersion.toVersion(libs.versions.jvmTarget.get()) targetCompatibility = JavaVersion.toVersion(libs.versions.jvmTarget.get()) } kotlin { compilerOptions { jvmTarget.set(JvmTarget.fromTarget(libs.versions.jvmTarget.get())) } } buildTypes { // This benchmark buildType is used for benchmarking, and should function like your // release build (for example, with minification on). It"s signed with a debug key // for easy local/CI testing. create("benchmark") { isDebuggable = true signingConfig = getByName("debug").signingConfig matchingFallbacks += listOf("release") } } flavorDimensions += listOf("app") productFlavors { create("foss") { dimension = "app" } create("market") { dimension = "app" } } targetProjectPath = ":app" experimentalProperties["android.experimental.self-instrumenting"] = true } dependencies { implementation(libs.androidx.test.ext.junit) implementation(libs.espresso) implementation(libs.uiautomator) implementation(libs.benchmark.macro.junit4) } androidComponents { beforeVariants(selector().all()) { it.enable = it.buildType == "benchmark" } }