/* * Copyright 2022 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * 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. */ import com.android.build.api.dsl.ManagedVirtualDevice // TODO: Remove once https://youtrack.jetbrains.com/issue/KTIJ-19369 is fixed @Suppress("DSL_SCOPE_VIOLATION") plugins { id("nowinandroid.android.library") id("nowinandroid.android.library.jacoco") id("nowinandroid.android.hilt") alias(libs.plugins.ksp) } android { defaultConfig { // The schemas directory contains a schema file for each version of the Room database. // This is required to enable Room auto migrations. // See https://developer.android.com/reference/kotlin/androidx/room/AutoMigration. ksp { arg("room.schemaLocation", "$projectDir/schemas") } testInstrumentationRunner = "com.google.samples.apps.nowinandroid.core.testing.NiaTestRunner" } namespace = "com.google.samples.apps.nowinandroid.core.database" testOptions { // TODO: Convert it as a convention plugin once Flamingo goes out (https://github.com/android/nowinandroid/issues/523) managedDevices { devices { maybeCreate("pixel4api30").apply { device = "Pixel 4" apiLevel = 30 // ATDs currently support only API level 30. systemImageSource = "aosp-atd" } } } } } dependencies { implementation(project(":core:model")) implementation(libs.room.runtime) implementation(libs.room.ktx) ksp(libs.room.compiler) implementation(libs.kotlinx.coroutines.android) implementation(libs.kotlinx.datetime) androidTestImplementation(project(":core:testing")) }