Commit Graph

353 Commits

Author SHA1 Message Date
Anton Bannykh 302e38dd18 JS: enable test after bootstrap
Check that a custom Promise declaration is supported for the @AfterTest
annotation functionality in the kotlin.test library

This is a part of the fix for KT-63359


Merge-request: KT-MR-14333
Merged-by: Anton Bannykh <Anton.Bannykh@jetbrains.com>
2024-02-19 11:56:18 +00:00
Yahor Berdnikau d662f72d07 [Gradle] Deprecate KotlinCompilation.compilerOptions
Users quite often confuse that compilerOptions in KotlinCompilation is
actually the same object in the Kotlin compilation task. We want to make
 our API more straightforward and remove this ambiguity by proposing to
 use task compiler options DSL.

^KT-65568 Verification Pending
2024-02-15 18:27:31 +00:00
Igor Yakovlev 78b666bb40 [WasmJs] Support custom js adapter support
Fix KT-58291
2024-02-06 13:55:20 +00:00
Igor Yakovlev 109ff2135f [WasmJs] Add async tests in kotlin.test 2024-02-06 13:55:20 +00:00
Ilya Gorbunov 905423aa17 [kotlin-test] Reconfigure JVM unit tests
- Include common annotations and assertions test source sets into each test platform test compilation in order to check how they work with that platform's annotations and asserter
- Run these tests without platform support jar to check the default asserter implementation
2024-02-06 12:58:50 +00:00
Ilya Gorbunov 309cecdefd [kotlin-test] Rename test to avoid duplication 2024-02-06 12:58:50 +00:00
Ilya Gorbunov 58c03e021b Update transitive dependencies of JVM test frameworks in kotlin-test KT-65242, KT-63397 2024-02-06 11:06:12 +00:00
Anton Bannykh 245409dede [JS] Support custom Promise declarations for kotlin.test @AfterTest
^KT-63359 fixed


Merge-request: KT-MR-14001
Merged-by: Anton Bannykh <Anton.Bannykh@jetbrains.com>
2024-01-24 12:43:51 +00:00
Ilya Gorbunov 72528056fb [kotlin-test] Migrate integration tests project from deprecated K/JS plugin 2024-01-23 17:57:48 +00:00
Ilya Gorbunov 000db0bb44 [kotlin-test] Move kotlin-test integration tests project 2024-01-23 17:57:48 +00:00
Ilya Goncharov 81efc8d7c7 [Gradle, JS] Replace outputFileProperty onto Binary's mainFile
^KT-63435 fixed
2023-12-20 12:36:28 +00:00
Ilya Gorbunov 5ce2a2cbee Use strongly typed task GenerateProjectStructureMetadata to tweak kpsm.json 2023-12-13 15:40:25 +00:00
Ilya Gorbunov e0bc0b81c6 [kotlin-test] Drop subprojects unneeded anymore KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov c40de28775 Replace kotlin-test-js project dependencies in the project
KT-61969
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 7a4335b087 [kotlin-test] Enable explicit API mode KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 6c46d11d0a [kotlin-test] Post-process capabilities in leaf framework artifacts' .module files KT-61969
Gradle copies capabilities from the variants of the root artifacts
to the variants of leaf artifacts which leads to capability conflict
when both root and leaf artifacts are present in a configuration during
variant-based dependency resolution
2023-12-13 15:40:25 +00:00
Ilya Gorbunov b91e4e24c4 [kotlin-test] Custom publishing layout KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov ffe54d3fc4 [kotlin-test] Alignment constraints for legacy artifacts KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 446cd1eec9 [kotlin-test] kpsm.json patching KT-61969
Adds source set relationships for additional variants
and also slightly stretches common source sets included into jvm variant
2023-12-13 15:40:25 +00:00
Ilya Gorbunov 5c4f0a70e0 [kotlin-test] Unit tests for additional compilations KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 2db2b18910 [kotlin-test] Additional framework jars and outgoing configurations KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 008a961913 [kotlin-test] Add module-info compilations KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 1d1645fd2d [kotlin-test] Setup KMP project for kotlin-test, targets and source sets KT-61969 2023-12-13 15:40:25 +00:00
Ilya Gorbunov 6d62119659 Introduce expects in common wasm sources actualized in wasmJs and wasmWasi 2023-12-13 15:40:25 +00:00
Alexander.Likhachev 0926ebac23 [Build] Remove BasePluginConvention usages
The entire concept of conventions is deprecated in Gradle. The proposed alternative for `BasePluginConvention` is `BasePluginExtension`
^KTI-1473 In Progress
2023-12-07 18:31:06 +00:00
Alexander.Likhachev eab2c6b9b9 [Build] Bump gradle-node-plugin version to 7.0.1
This change is required to fix a configuration cache problem revealed after migration to Gradle 8.4
^KTI-1473 In Progress
2023-12-07 18:31:06 +00:00
Alexander.Likhachev a19bd2ed2e [Build] Migrate most of the build logic from Project.buildDir usage
It's going to be deprecated in Gradle 8.3

There's currently no way to pass a `org.gradle.api.provider.Provider` to the JavaExec.systemProperty or Test.systemProperty. There's a workaround using `org.gradle.process.CommandLineArgumentProvider`, but I intentionally don't rework these calls as Gradle is going to allow passing providers to configure system properties: https://github.com/gradle/gradle/issues/12247#issuecomment-1568427242
^KTI-1473 In Progress
2023-12-07 18:31:06 +00:00
Ilya Gorbunov 66639d37ec [kotlin-test] Explicit public visibility and return types 2023-11-17 17:20:51 +00:00
Artem Kobzar ff50d40b32 [K/JS] Rework kotlin tests compilation to make it works with per-file granularity ^KT-61525 Fixed 2023-11-16 19:02:04 +00:00
dependabot[bot] 50e75c6336 Bump @babel/traverse in /libraries/kotlin.test/js-ir/it
Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.22.5 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-10-17 18:15:56 +00:00
Ilya Gorbunov d4b245615a Build wasm stdlib artifacts in kotlin-stdlib project 2023-10-17 16:30:41 +00:00
Ilya Goncharov 51c6e81de9 [JS] Drop publishing JAR artifact of kotlin-test-js
^KT-62067 fixed
2023-10-16 13:34:37 +00:00
Ilya Gorbunov eb813b7837 KT-62004 Drop legacy JS build of kotlin-test 2023-10-06 00:46:08 +00:00
Ilya Gorbunov 222f996d45 [stdlib-mpp] Cleanup kotlin.stdlib.mpp build flag (always true) 2023-09-20 01:07:59 +00:00
Alexander Udalov 909f32ed54 Build: pass -Xexpect-actual-classes to some libraries compile tasks
To suppress the warning introduced in KT-61573.
2023-09-12 11:24:29 +00:00
Alexander.Likhachev 6eaccc997f [Build] Fix the typo junit jupyter -> jupiter 2023-09-06 22:47:34 +00:00
Alexander.Likhachev 7f8d9df76d [Build] Use the latest JUnit engine for kotlin-test-junit5 tests
This change aligns with the intention in 634279621d, however the "latest" version wasn't synced with other "latest" versions within the repo
#KTI-1349 In Progress
2023-09-06 22:47:34 +00:00
Nikita Bobko 01fc708a0f Mark expect/actual classifiers as experimental
^KT-61573 Fixed
Review: https://jetbrains.team/p/kt/reviews/11969/timeline

Tests:
- MultiPlatformIntegrationTestGenerated
- CliTestGenerated
- MultiPlatformIntegrationTestGenerated
- DiagnosticTestGenerated.Multiplatform
- FirLightTreeOldFrontendDiagnosticsTestGenerated

Also add -Xexpect-actual-classes flag to all necessary ./libraries/* modules
Otherwise compilation of those modules failes because of `-Werror`
2023-09-04 12:21:37 +00:00
Ilya Gorbunov e103318432 kotlin-test-js: assemble sources jar that combines common and platform sources, KT-61315, KTIJ-23784 2023-08-24 01:24:07 +00:00
Ilya Gorbunov 5f5e76a09b kotlin-test-wasm: correct main source sets compilation, KT-61342
- Do not include test sources in main source sets
- Extract commonWasm source set that contains code shared between
wasm-js and wasm-wasi
2023-08-22 13:50:58 +00:00
Ilya Gorbunov c98377af7b Add js compiler disambiguation attribute to fix errors on project import
There were remaining configurations in legacy JS projects with amiguous attributes requesting kotlin-stdlib. They are not used in build, but resolved on import.
2023-08-16 14:25:54 +00:00
Igor Yakovlev f42d0b1ed4 [Wasm] Add wasi kotlin.test target gradle buildscript 2023-08-08 18:10:19 +02:00
Igor Yakovlev d1c7caf15c [Wasm] Add wasi stdlib target gradle buildscript
KT-56608
2023-08-08 18:10:19 +02:00
Igor Yakovlev 18a9c1916e [Wasm] Wasi kotlin.test implementation 2023-08-08 18:10:19 +02:00
Ilya Gorbunov ff1dbab290 [stdlib-mpp] Extract separate variants of kotlin-test for jsIR and jsV1
Otherwise stdlib-js dependency can't be resolved by spdx plugin
 because stdlib has different variants for legacy and IR JS.

KT-56106
2023-08-03 14:47:21 +00:00
Ilya Gorbunov a9bc8fa402 [stdlib-mpp] Exclude kotlin-stdlib-js/js-ir projects and use kotlin-stdlib instead
- Specify disambiguating attributes in kotlin-dom-api-compat
  compile dependency configurations
  because it uses the flag that removes JS compiler type attribute
  from all configurations and variants

  KT-56106
2023-08-03 14:47:21 +00:00
Ilya Gorbunov b3707807b6 [stdlib-mpp] Do not depend on kotlin-stdlib-common in kotlin-test-common
KT-56106
2023-08-03 14:47:21 +00:00
Ilya Gorbunov 9390afa749 [stdlib-mpp] Remove workaround for building kotlin-test-js as a modern K/JS project
KT-56106
2023-08-03 14:47:21 +00:00
Ilya Gorbunov dcc71e77f3 [stdlib-mpp] Specify configuration attributes for stdlib-js variant disambiguation
#KT-56106
2023-08-03 14:47:20 +00:00
Ilya Gorbunov 9bdd365be4 [stdlib-mpp] Workaround for building kotlin-test-js as a modern K/JS project
#KT-56106
2023-08-03 14:47:19 +00:00