6b409d87f5
This change adds a library with cinterop that has XCTest wrapper around Kotlin/Native tests (that are @kotlin.test.Test marked methods). This library can be compiled with either test code using the option `-produce test_bundle` to make a loadable test bundle or used inside the existing ObjC/Swift tests if compiled to a framework. The basic idea is to make XCTest be able to resolve separate test cases and correctly show them in test reports. This was achieved by wrapping test cases with dynamically created invocation methods. Test listeners are integrated with XCTest Observation to make it possible to have the same ability to report with GTest or TeamCity logging. Gradle build files use MPP Gradle plugin and use a bootstrap version of K/N. Property `kotlin.native.home` was moved to the kotlin-native subproject to not override this project's K/N distribution, that is being used by the KGP with the same property. This is a part of ^KT-58928 Merge-request: KT-MR-13268 Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
149 lines
5.5 KiB
Properties
149 lines
5.5 KiB
Properties
org.gradle.jvmargs=-Duser.country=US -Dfile.encoding=UTF-8 -Dorg.gradle.internal.publish.checksums.insecure=true
|
|
|
|
systemProp.file.encoding=UTF-8
|
|
systemProp.user.country=US
|
|
# Enable new incremental compiation
|
|
kotlin.incremental.useClasspathSnapshot=true
|
|
|
|
org.gradle.parallel=true
|
|
org.gradle.caching=true
|
|
org.gradle.kotlin.dsl.allWarningsAsErrors=true
|
|
|
|
# Please keep it in sync with buildSrc gradle.properties.
|
|
# It's currently needed for proper configuration cache work, the reason will be investigated later
|
|
org.gradle.java.installations.fromEnv=\
|
|
JDK_1_6,JDK_16,\
|
|
JDK_1_7,JDK_17,\
|
|
JDK_1_8,JDK_18,\
|
|
JDK_9_0,JDK_9,\
|
|
JDK_10_0,JDK_10,\
|
|
JDK_11_0,JDK_11,\
|
|
JDK_15_0,JDK_15,\
|
|
JDK_16_0,\
|
|
JDK_17_0
|
|
|
|
systemProp.org.gradle.internal.http.connectionTimeout=90000
|
|
systemProp.org.gradle.internal.http.socketTimeout=90000
|
|
|
|
cacheRedirectorEnabled=true
|
|
defaultSnapshotVersion=2.0.255-SNAPSHOT
|
|
kotlinLanguageVersion=2.0
|
|
|
|
# Should be less or equal to the Kotlin stdlib version used inside IntelliJ IDEA repository, see KT-62510.
|
|
# IntelliJ IDEA Kotlin stdlib version can be found at https://github.com/JetBrains/intellij-community/blob/master/.idea/libraries/kotlin_stdlib.xml
|
|
kotlinApiVersionForProjectsUsedInIntelliJKotlinPlugin=1.9
|
|
|
|
kotlin.build.gradlePlugin.version=0.0.40
|
|
|
|
#maven.repository.mirror=http://repository.jetbrains.com/remote-repos/
|
|
#bootstrap.kotlin.repo=https://maven.pkg.jetbrains.space/kotlin/p/kotlin/bootstrap
|
|
#bootstrap.kotlin.version=1.1.50-dev-1451
|
|
bootstrap.kotlin.default.version=2.0.0-dev-12830
|
|
|
|
kotlin.build.publishing.attempts=20
|
|
#signingRequired=true
|
|
|
|
## The following properties can be added to your local.properties file to customize the build:
|
|
|
|
kotlin.jvm.target.validation.mode=error
|
|
kotlin.options.suppressFreeCompilerArgsModificationWarning=true
|
|
|
|
#attachedIntellijVersion=203 (or any other platform version)
|
|
|
|
## Used for compare gradle and jps build
|
|
|
|
#kotlin.build.postprocessing=false
|
|
#kotlin.build.java9=false
|
|
#kotlin.build.useBootstrapStdlib=true
|
|
|
|
# Don't add the Kotlin standard library dependencies by default
|
|
# TODO: add this flag in a granular way to the modules that don't need stdlib?
|
|
kotlin.stdlib.default.dependency=false
|
|
kotlin.js.stdlib.dom.api.included=false
|
|
|
|
# Suppress warnings about using deprecated and unstable plugins in kotlin-stdlib
|
|
kotlin.internal.mpp12x.deprecation.suppress=true
|
|
kotlin.mpp.stability.nowarn=true
|
|
kotlin.wasm.stability.nowarn=true
|
|
kotlin.js.compiler.nowarn=true
|
|
|
|
# Suppress the build tools API version consistency checks because of workaround.
|
|
# Check out bootstrapCompilerClasspath and bootstrapBuildToolsApiClasspath configurations for details.
|
|
kotlin.internal.suppress.buildToolsApiVersionConsistencyChecks=true
|
|
|
|
kotlin.native.enabled=false
|
|
|
|
org.gradle.vfs.watch=true
|
|
|
|
kotlin.build.internal.gradle.setup=true
|
|
|
|
# Enable JPS build
|
|
#jpsBuild=true
|
|
|
|
# Enable compilation of project using FIR compiler
|
|
#kotlin.build.useFir=true
|
|
|
|
# Enable FIR compiler for kotlin-stdlib, kotlin-reflect, kotlin-test.
|
|
#kotlin.build.useFirForLibraries=true
|
|
|
|
# Enable overriding JDK 6 and JDK 7 with JDK 8 in java toolchains
|
|
# This flag is required if you don't have JDK 6 or JDK 7 manually installed
|
|
#kotlin.build.isObsoleteJdkOverrideEnabled=true
|
|
|
|
# Disable -Werror compiler flag
|
|
#kotlin.build.disable.werror=true
|
|
|
|
# Render internal diagostic names
|
|
#kotlin.build.render.diagnostic.names=true
|
|
|
|
# Enable bootstrap from local build of compiler (build from ./gradlew publish)
|
|
#bootstrap.local=true
|
|
# By default bootstrap compiler is located in ./build/repo directory
|
|
# If it differs from default use next flag:
|
|
#bootstrap.local.path=/path/to/repo
|
|
|
|
# Set number of threads which are used for running JUnit 5 tests in concurrent mode
|
|
# If not set then min(number of CPU cores, 16) will be used
|
|
#kotlin.test.junit5.maxParallelForks=4
|
|
|
|
# Those properties are used to automatically generate run configurations for modularized
|
|
# and full pipeline tests for different sets of test data
|
|
# Generate ModularizedTest configurations
|
|
#kotlin.fir.modularized.mt.configurations=true
|
|
# Generate FullPipeline configurations
|
|
#kotlin.fir.modularized.fp.configurations=true
|
|
# Generate additional configurations for Kotlin project
|
|
#kotlin.fir.modularized.additional.configurations
|
|
# Specify paths to projects for modularized tests
|
|
#kotlin.fir.modularized.testdata.kotlin=/path/to/kotlin/project/testdata
|
|
#kotlin.fir.modularized.testdata.intellij=/path/to/intellij/project/testdata
|
|
#kotlin.fir.modularized.testdata.youtrack=/path/to/youtrack/project/testdata
|
|
#kotlin.fir.modularized.testdata.space=/path/to/space/project/testdata
|
|
|
|
# =====================
|
|
# JS & Wasm Tests
|
|
# Any property whose name starts with "fd." will be forwarded to unit test process without "fd." prefix and the same value,
|
|
# including properties from root local.properties.
|
|
|
|
# The property to control IR dump strategy.
|
|
# For `KotlinLike` it uses `e.dumpKotlinLike()` which is more readable & concise but may omit some information,
|
|
# otherwise "classic" `e.dump()` which is more verbose.
|
|
#fd.org.jetbrains.kotlin.compiler.ir.dump.strategy=KotlinLike
|
|
|
|
# Customize wasm unit test runner, possible values:
|
|
# * none | false | 0 (default)
|
|
# - Do nothing special.
|
|
# * debug | true | 1
|
|
# - Prints paths to current test's kt file and other generated files.
|
|
# - Generates .wat file.
|
|
# - Generate html file to run a test inside browser.
|
|
# - Generate verbose js for running a test (log "test passed").
|
|
# * super_debug | 2
|
|
# - All from previous.
|
|
# - Dump IR after each phase.
|
|
#fd.kotlin.wasm.debugMode=debug
|
|
|
|
# =====================
|
|
# Enable new dependency resolution | KT-58319
|
|
kotlin.mpp.import.enableKgpDependencyResolution=true
|