blob: 0fe8c7c2b5e2b00072051276ca8a3f153d8878ab [file] [log] [blame]
/*
* Copyright 2020 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
*
* http://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 androidx.build.LibraryGroups
import androidx.build.LibraryVersions
import androidx.build.Publish
import androidx.build.RunApiTasks
plugins {
id("AndroidXPlugin")
id("com.android.library")
id("kotlin-android")
}
dependencies {
api("androidx.annotation:annotation:1.2.0")
api(project(":camera:camera-core"))
implementation("androidx.core:core:1.1.0")
implementation("androidx.concurrent:concurrent-futures:1.0.0")
implementation(libs.autoValueAnnotations)
annotationProcessor(libs.autoValue)
// TODO(leohuang): We need this for assertThrows. Point back to the AndroidX shared version if
// it is ever upgraded.
testImplementation("junit:junit:4.13")
testImplementation(libs.kotlinStdlib)
testImplementation(libs.testCore)
testImplementation(libs.testRunner)
testImplementation(libs.junit)
testImplementation(libs.truth)
testImplementation(libs.robolectric)
testImplementation(libs.mockitoCore)
testImplementation("androidx.core:core-ktx:1.1.0")
testImplementation(project(":camera:camera-testing"), {
exclude group: "androidx.camera", module: "camera-core"
})
androidTestImplementation(libs.multidex)
androidTestImplementation(project(path: ":camera:camera-camera2"))
androidTestImplementation(libs.testExtJunit)
androidTestImplementation(libs.testCore)
androidTestImplementation(libs.testRunner)
androidTestImplementation(libs.testRules)
androidTestImplementation(libs.truth)
androidTestImplementation(libs.mockitoCore, excludes.bytebuddy) // DexMaker has it's own MockMaker
androidTestImplementation(libs.dexmakerMockito, excludes.bytebuddy) // DexMaker has it's own MockMaker
androidTestImplementation(project(":camera:camera-lifecycle"))
androidTestImplementation(project(":camera:camera-testing"))
androidTestImplementation(libs.kotlinStdlib)
androidTestImplementation(libs.kotlinCoroutinesAndroid)
androidTestImplementation(project(":concurrent:concurrent-futures-ktx"))
androidTestImplementation(project(":internal-testutils-truth"))
androidTestImplementation libs.mockitoKotlin, {
exclude group: 'org.mockito' // to keep control on the mockito version
}
}
android {
defaultConfig {
multiDexEnabled = true
}
// Use Robolectric 4.+
testOptions.unitTests.includeAndroidResources = true
kotlinOptions.freeCompilerArgs += "-Xopt-in=kotlin.RequiresOptIn"
}
androidx {
name = "Jetpack Camera Video Library"
publish = Publish.SNAPSHOT_AND_RELEASE
runApiTasks = new RunApiTasks.Yes("Need to track API surface before moving to publish")
mavenGroup = LibraryGroups.CAMERA
inceptionYear = "2020"
description = "Video components for the Jetpack Camera Library, a library providing a " +
"consistent and reliable camera foundation that enables great camera driven " +
"experiences across all of Android."
}