Files
AndroidJetpack/DuckDuckGo/autofill/autofill-impl/build.gradle
T
coco 723ce1af5c a
2026-07-03 15:12:48 +08:00

121 lines
4.1 KiB
Groovy

/*
* Copyright (c) 2021 DuckDuckGo
*
* 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.
*/
plugins {
id 'com.android.library'
id 'kotlin-android'
id 'com.squareup.anvil'
}
apply from: "$rootProject.projectDir/gradle/android-library.gradle"
ext {
autofillDisableAuthRequirementBuildFlag = "autofill-disable-auth-requirement"
}
dependencies {
implementation project(path: ':app-build-config-api')
implementation project(path: ':privacy-config-api')
implementation project(path: ':feature-toggles-api')
implementation project(path: ':di')
implementation project(path: ':common-utils')
implementation project(path: ':common-ui')
implementation project(path: ':autofill-api')
implementation project(path: ':browser-api')
implementation project(path: ':autofill-store')
implementation project(path: ':statistics')
testImplementation project(path: ':autofill-test')
implementation project(path: ':sync-api')
implementation project(path: ':navigation-api')
implementation project(':user-agent-api')
anvil project(path: ':anvil-compiler')
implementation project(path: ':anvil-annotations')
implementation AndroidX.appCompat
implementation Google.android.material
implementation AndroidX.constraintLayout
implementation JakeWharton.timber
implementation KotlinX.coroutines.core
implementation AndroidX.fragment.ktx
implementation "androidx.webkit:webkit:_"
implementation Square.retrofit2.converter.moshi
implementation "com.squareup.moshi:moshi-kotlin:_"
implementation "com.squareup.moshi:moshi-adapters:_"
implementation Google.dagger
implementation AndroidX.core.ktx
implementation AndroidX.work.runtimeKtx
implementation AndroidX.room.ktx
implementation AndroidX.biometric
implementation "net.zetetic:android-database-sqlcipher:_"
// Testing dependencies
testImplementation "org.mockito.kotlin:mockito-kotlin:_"
testImplementation Testing.junit4
testImplementation AndroidX.core
testImplementation AndroidX.test.ext.junit
testImplementation "androidx.test:runner:_"
testImplementation Testing.robolectric
testImplementation CashApp.turbine
testImplementation "org.jetbrains.kotlin:kotlin-reflect:_"
testImplementation project(path: ':common-test')
testImplementation (KotlinX.coroutines.test) {
// https://github.com/Kotlin/kotlinx.coroutines/issues/2023
// conflicts with mockito due to direct inclusion of byte buddy
exclude group: "org.jetbrains.kotlinx", module: "kotlinx-coroutines-debug"
}
coreLibraryDesugaring Android.tools.desugarJdkLibs
}
android {
anvil {
generateDaggerFactories = true // default is false
}
lint {
baseline file("lint-baseline.xml")
}
testOptions {
unitTests {
includeAndroidResources = true
}
}
namespace 'com.duckduckgo.autofill.impl'
compileOptions {
coreLibraryDesugaringEnabled = true
}
defaultConfig {
if (project.hasProperty("$autofillDisableAuthRequirementBuildFlag")) {
buildConfigField "boolean", "AUTH_REQUIRED", "false"
} else {
buildConfigField "boolean", "AUTH_REQUIRED", "true"
}
}
}
tasks.register('installForAutofillTesting', Exec) {
commandLine "$rootDir/gradlew", ':app:installInternalRelease', "-P$autofillDisableAuthRequirementBuildFlag"
}
tasks.register('autofillTestLocal', Exec) {
commandLine 'maestro', 'test', '--include-tags', 'autofillNoAuthTests', "$rootDir/.maestro"
dependsOn 'installForAutofillTesting'
}