1*f585d8a3SJacky Wang/* 2*f585d8a3SJacky Wang * Copyright (C) 2020 The Dagger Authors. 3*f585d8a3SJacky Wang * 4*f585d8a3SJacky Wang * Licensed under the Apache License, Version 2.0 (the "License"); 5*f585d8a3SJacky Wang * you may not use this file except in compliance with the License. 6*f585d8a3SJacky Wang * You may obtain a copy of the License at 7*f585d8a3SJacky Wang * 8*f585d8a3SJacky Wang * http://www.apache.org/licenses/LICENSE-2.0 9*f585d8a3SJacky Wang * 10*f585d8a3SJacky Wang * Unless required by applicable law or agreed to in writing, software 11*f585d8a3SJacky Wang * distributed under the License is distributed on an "AS IS" BASIS, 12*f585d8a3SJacky Wang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13*f585d8a3SJacky Wang * See the License for the specific language governing permissions and 14*f585d8a3SJacky Wang * limitations under the License. 15*f585d8a3SJacky Wang */ 16*f585d8a3SJacky Wang 17*f585d8a3SJacky Wangbuildscript { 18*f585d8a3SJacky Wang ext { 19*f585d8a3SJacky Wang dagger_version = 'LOCAL-SNAPSHOT' 20*f585d8a3SJacky Wang kotlin_version = '1.9.20' 21*f585d8a3SJacky Wang agp_version = System.getenv('AGP_VERSION') ?: "7.1.2" 22*f585d8a3SJacky Wang } 23*f585d8a3SJacky Wang repositories { 24*f585d8a3SJacky Wang google() 25*f585d8a3SJacky Wang mavenCentral() 26*f585d8a3SJacky Wang mavenLocal() 27*f585d8a3SJacky Wang } 28*f585d8a3SJacky Wang dependencies { 29*f585d8a3SJacky Wang classpath "com.android.tools.build:gradle:$agp_version" 30*f585d8a3SJacky Wang classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" 31*f585d8a3SJacky Wang classpath "com.google.dagger:hilt-android-gradle-plugin:$dagger_version" 32*f585d8a3SJacky Wang } 33*f585d8a3SJacky Wang} 34*f585d8a3SJacky Wang 35*f585d8a3SJacky Wangallprojects { 36*f585d8a3SJacky Wang repositories { 37*f585d8a3SJacky Wang google() 38*f585d8a3SJacky Wang mavenCentral() 39*f585d8a3SJacky Wang mavenLocal() 40*f585d8a3SJacky Wang } 41*f585d8a3SJacky Wang // TODO(bcorso): Consider organizing all projects under a single project 42*f585d8a3SJacky Wang // that share a build.gradle configuration to reduce the copy-paste. 43*f585d8a3SJacky Wang // Local tests: Adds logs for individual local tests 44*f585d8a3SJacky Wang tasks.withType(Test) { 45*f585d8a3SJacky Wang testLogging { 46*f585d8a3SJacky Wang exceptionFormat "full" 47*f585d8a3SJacky Wang showCauses true 48*f585d8a3SJacky Wang showExceptions true 49*f585d8a3SJacky Wang showStackTraces true 50*f585d8a3SJacky Wang showStandardStreams true 51*f585d8a3SJacky Wang events = ["passed", "skipped", "failed", "standardOut", "standardError"] 52*f585d8a3SJacky Wang } 53*f585d8a3SJacky Wang } 54*f585d8a3SJacky Wang} 55*f585d8a3SJacky Wangsubprojects { 56*f585d8a3SJacky Wang afterEvaluate { 57*f585d8a3SJacky Wang dependencies { 58*f585d8a3SJacky Wang // This is needed to align older versions of kotlin-stdlib. 59*f585d8a3SJacky Wang // The main issue is that in v1.8.0 the jdk7 and jdk8 artifacts were 60*f585d8a3SJacky Wang // merged into kotlin-stdlib, so without this alignment we end up 61*f585d8a3SJacky Wang // getting duplicate classes by pulling in both artifacts. 62*f585d8a3SJacky Wang // See: https://kotlinlang.org/docs/whatsnew18.html#usage-of-the-latest-kotlin-stdlib-version-in-transitive-dependencies 63*f585d8a3SJacky Wang implementation(platform("org.jetbrains.kotlin:kotlin-bom:$kotlin_version")) 64*f585d8a3SJacky Wang } 65*f585d8a3SJacky Wang } 66*f585d8a3SJacky Wang} 67*f585d8a3SJacky Wang 68*f585d8a3SJacky Wang// Instrumentation tests: Combines test reports for all modules 69*f585d8a3SJacky Wangapply plugin: 'android-reporting' 70