xref: /aosp_15_r20/tools/metalava/metalava-model-snapshot-testing/build.gradle.kts (revision 115816f9299ab6ddd6b9673b81f34e707f6bacab)
1*115816f9SAndroid Build Coastguard Worker /*
2*115816f9SAndroid Build Coastguard Worker  * Copyright (C) 2024 The Android Open Source Project
3*115816f9SAndroid Build Coastguard Worker  *
4*115816f9SAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
5*115816f9SAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
6*115816f9SAndroid Build Coastguard Worker  * You may obtain a copy of the License at
7*115816f9SAndroid Build Coastguard Worker  *
8*115816f9SAndroid Build Coastguard Worker  *      http://www.apache.org/licenses/LICENSE-2.0
9*115816f9SAndroid Build Coastguard Worker  *
10*115816f9SAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
11*115816f9SAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
12*115816f9SAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*115816f9SAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
14*115816f9SAndroid Build Coastguard Worker  * limitations under the License.
15*115816f9SAndroid Build Coastguard Worker  */
16*115816f9SAndroid Build Coastguard Worker 
<lambda>null17*115816f9SAndroid Build Coastguard Worker plugins {
18*115816f9SAndroid Build Coastguard Worker     `java-library`
19*115816f9SAndroid Build Coastguard Worker     `java-test-fixtures`
20*115816f9SAndroid Build Coastguard Worker     id("org.jetbrains.kotlin.jvm")
21*115816f9SAndroid Build Coastguard Worker     id("metalava-build-plugin")
22*115816f9SAndroid Build Coastguard Worker 
23*115816f9SAndroid Build Coastguard Worker     // This project does not actually provide an implementation of the metalava-model, but it does
24*115816f9SAndroid Build Coastguard Worker     // run the test suite over other models, on a snapshot of the codebase they create.
25*115816f9SAndroid Build Coastguard Worker     id("metalava-model-provider-plugin")
26*115816f9SAndroid Build Coastguard Worker }
27*115816f9SAndroid Build Coastguard Worker 
<lambda>null28*115816f9SAndroid Build Coastguard Worker dependencies {
29*115816f9SAndroid Build Coastguard Worker     testImplementation(project(":metalava-model"))
30*115816f9SAndroid Build Coastguard Worker     testImplementation(testFixtures(project(":metalava-model")))
31*115816f9SAndroid Build Coastguard Worker 
32*115816f9SAndroid Build Coastguard Worker     // Include the text model's test runner so that the test suite will run its signature based
33*115816f9SAndroid Build Coastguard Worker     // tests on a snapshot of the codebase it produces.
34*115816f9SAndroid Build Coastguard Worker     testImplementation(testFixtures(project(":metalava-model-text")))
35*115816f9SAndroid Build Coastguard Worker 
36*115816f9SAndroid Build Coastguard Worker     // Pick up the SourceModelSuiteRunner service to run the `metalava-model-testsuite` against a
37*115816f9SAndroid Build Coastguard Worker     // SourceModelProvider.
38*115816f9SAndroid Build Coastguard Worker     testImplementation(testFixtures(project(":metalava-model-source")))
39*115816f9SAndroid Build Coastguard Worker 
40*115816f9SAndroid Build Coastguard Worker     // Include the turbine model's SourceModelProvider so that the test suite will run its Java
41*115816f9SAndroid Build Coastguard Worker     // based tests on a snapshot of the codebase it produces.
42*115816f9SAndroid Build Coastguard Worker     testImplementation(project(":metalava-model-turbine"))
43*115816f9SAndroid Build Coastguard Worker 
44*115816f9SAndroid Build Coastguard Worker     // Include the psi model's SourceModelProvider so that the test suite will run its Java based
45*115816f9SAndroid Build Coastguard Worker     // tests on a snapshot of the codebase it produces.
46*115816f9SAndroid Build Coastguard Worker     testImplementation(project(":metalava-model-psi"))
47*115816f9SAndroid Build Coastguard Worker }
48