aboutsummaryrefslogtreecommitdiff
path: root/dokka-subprojects/analysis-kotlin-api/build.gradle.kts
blob: 96299814d7c3f28a04d1d550aec35c7c77680544 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
/*
 * Copyright 2014-2023 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license.
 */

import dokkabuild.overridePublicationArtifactId

plugins {
    id("dokkabuild.kotlin-jvm")
    id("dokkabuild.publish-jvm")
    id("dokkabuild.test-k2")
    `java-test-fixtures`
}

overridePublicationArtifactId("analysis-kotlin-api")

dependencies {
    compileOnly(projects.dokkaSubprojects.dokkaCore)

    testFixturesApi(projects.dokkaSubprojects.dokkaCore)

    testImplementation(kotlin("test"))

    symbolsTestConfiguration(project(path = ":dokka-subprojects:analysis-kotlin-symbols", configuration = "shadow"))
    descriptorsTestConfiguration(project(path = ":dokka-subprojects:analysis-kotlin-descriptors", configuration = "shadow"))
}

disableTestFixturesPublishing()

/**
 * Test fixtures are automatically published by default, which at this moment in time is unwanted
 * as the test api is unstable and is internal to the Dokka project, so it shouldn't be used outside of it.
 *
 * @see https://docs.gradle.org/current/userguide/java_testing.html#ex-disable-publishing-of-test-fixtures-variants
 */
fun disableTestFixturesPublishing() {
    val javaComponent = components["java"] as AdhocComponentWithVariants
    javaComponent.withVariantsFromConfiguration(configurations["testFixturesApiElements"]) { skip() }
    javaComponent.withVariantsFromConfiguration(configurations["testFixturesRuntimeElements"]) { skip() }
}