This module contains integration tests covering the build tools API implementation using the DSL built on top of the Build Tools API.
To run all tests use the check task.
The module defines test suites using the jvm-test-suite plugin.
./gradlew :compiler:build-tools:kotlin-build-tools-api-tests:testCompatibility1.9.20 to run the tests against BTA implementation 1.9.20./gradlew :compiler:build-tools:kotlin-build-tools-api-tests:testCompatibilitySnapshot to run the tests against the current BTA implementation./gradlew :compiler:build-tools:kotlin-build-tools-api-tests:testEscapableCharacters to run themcheck task./gradlew :compiler:build-tools:kotlin-build-tools-api-tests:testExample to run themFew rules you should follow while writing tests:
@DisplayName(...) with meaningful description both for test class and methods inside. This will allow developers easier to understand what test is about.businessLogicTestSuits in the build.gradle.kts@TestMetadata(...) annotation to provide convenient Intellij IDEA navigation to the test data. It does not support navigation to multiple test data locations, thus please put a link to at least one tested moduleThe rules specific to compilation tests:
DefaultStrategyAgnosticCompilationTest annotation if the test is expected to perform exactly the same using the daemon or in-process compiler execution strategy.CompilationService.makeCompilerExecutionStrategyConfiguration()The incremental compilation tests written using the scenario DSL are subject to some optimizations and automatic checks, allowing you to avoid boilerplate.
Please refer to the example test class for more information