Commit Graph

178 Commits

Author SHA1 Message Date
Pavel Punegov a90983ca6a [K/N][test] Sync PsiFactory creation
CoreApplicationEnvironment.registerApplicationDynamicExtensionPoint should be
guarded to ensure registration won't happen concurrently

Merge-request: KT-MR-8251
Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
2023-01-12 10:39:43 +00:00
Igor Chevdar ae56f2686a [K/N][tests] Extracted common utility functions 2023-01-11 14:13:03 +00:00
Igor Chevdar 758e9ea9ae [K/N][tests] Added a couple of tests on caches 2023-01-11 14:13:03 +00:00
Vladimir Sukharev 924898afb7 [K/N] KFC-446: K2 platform: Native alpha
Merge-request: KT-MR-7905
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2023-01-04 16:10:40 +00:00
Sergey Bogolepov 64319477f0 [K/N] Test for cinterop hints 2022-12-21 13:28:17 +00:00
Dmitriy Dolovov ab4603c9a3 [K/N] Mute LLDB tests if any other than DEBUG opt mode is used 2022-12-15 13:11:57 +00:00
Dmitriy Dolovov f07f7885c5 [K/N] Small clean-up in LLDB tests 2022-12-14 08:58:10 +00:00
Johan Bay 842a66c3de [K/N] Migrate LLDB test to blackboxtest
This change only introduces a single sample test together
with the necessary plumbing for basic LLDB testing.
Migrating the rest of the tests over and introducing more
complex interop setups will be tackled as a follow-up.
2022-12-14 08:58:10 +00:00
Vladimir Sukharev b883dc5434 [KT-39120] Add "-fmodules" argument support to Cinterop
Merge-request: KT-MR-6921
Merged-by: Vladimir Sukharev <Vladimir.Sukharev@jetbrains.com>
2022-11-30 08:46:40 +00:00
mvicsokolova 95506ff56e Fix initialization args for AbstractNativeKlibBinaryCompatibilityTest 2022-11-04 10:10:51 +00:00
Dmitriy Dolovov fbfb564b41 [Native][tests] Don't compile given KLIB libraries 2022-11-04 10:10:51 +00:00
Dmitriy Dolovov a8b0f8a145 [Native][tests] Minor: Add check to ensure all custom KLIBs are valid 2022-11-04 10:10:50 +00:00
mvicsokolova 775db55539 [Native][tests] Support passing custom (external) KLIBs as -l dependencies to Kotlin/Native compiler invocation 2022-11-04 10:10:50 +00:00
Dmitriy Dolovov f98a5020cd [Native][tests] Don't patch FQNs inside of kotlinx.* package 2022-11-04 10:10:49 +00:00
Pavel Punegov 762f014c5f [K/N][test] Don't mark objects with ThreadLocal annotation for new MM
Merge-request: KT-MR-7569
Merged-by: Pavel Punegov <Pavel.Punegov@jetbrains.com>
2022-11-03 11:23:36 +00:00
Dmitriy Dolovov 181809e2af [IR][tests] Support friend-dependencies in KLIB ABI compatibility tests 2022-10-20 10:18:56 +02:00
Dmitriy Dolovov 94f9963230 [Native][tests] Update test warnings filter to reflect changes in partial linkage warnings 2022-10-20 10:18:52 +02:00
Dmitriy Dolovov f048e3ddf7 [IR][tests] Refactoring: Get rid of AbstractKlibABITestCase 2022-10-19 13:46:24 +00:00
Dmitriy Dolovov b5655dfaac [IR][tests] Ignore muted ABI compatibility tests 2022-10-19 13:46:23 +00:00
Svyatoslav Scherbina 3e1eddcf54 Get rid of unsafe cast function usages in :native:native.tests 2022-10-11 15:11:03 +00:00
Marat Akhin f73897fcea [K/N][KLIB][Tests]: mark klib binary compatibility tests as klib-abi
This is to avoid the need to change all our TC configurations to include
another test task run
2022-09-27 10:03:07 +00:00
Marat Akhin d6230a2e7b [K/N][KLIB][Tests]: support for klib binary compatibility tests on K/N
The impl supports both regular and caching testing modes.
Also add Gradle target for klib binary compatibility tests.
2022-09-27 10:03:06 +00:00
Dmitriy Dolovov 6b6bc7d6fe [Native][tests] Fix: Pass friend modules to compiler CLI when building static cache
^KT-53723
2022-08-30 07:56:17 +00:00
Igor Chevdar ccb4b5fd7d Revert "[Native][tests] Temporarily disable String codegen/box tests with "-opt" mode"
This reverts commit b210e24b43.
2022-08-22 06:05:53 +00:00
Pavel Kunyavskiy 828811a47f [K/N] Support running with thread sanitizer in test infra 2022-08-10 08:36:05 +00:00
Dmitriy Dolovov b507975812 [Native][tests] Make InfrastructureDumpedTestListingTest to be line ending tolerant 2022-08-09 12:32:22 +00:00
Igor Chevdar 03d21d9f79 [K/N][box-tests] Supported running box tests with per-file caches 2022-08-06 17:40:28 +00:00
Svyatoslav Scherbina 1b131332ab [Native][tests] Simplify handling opt-ins in the test launcher
For a box test, the test engine generates a test launcher -- a function
that calls `box` function. The latter might require an opt-in. To deal
with this, the test engine was using some heuristics to detect possibly
used opt-ins and applied them to the test launcher.

This commit provides an alternative solution -- it uses
`@Suppress("OPT_IN_USAGE_ERROR")` annotation for the test launcher. This
way, it doesn't have to guess which opt-ins to apply.
2022-08-01 15:24:15 +02:00
Svyatoslav Scherbina c1853a0218 [Native][tests] Introduce NATIVE_STANDALONE directive
This directive makes the test standalone, i.e. disables grouping it with
other tests into a single compilation, and in particular disables
package renaming for the test.

Also, remove the old hard-coded way to mark tests standalone.
2022-08-01 15:24:10 +02:00
Svyatoslav Scherbina d50b0693b2 [Native][tests] Don't make typeOf tests standalone
The test engine detected tests using typeOf and made them "standalone",
i.e. disabled test grouping and thus package renaming for them, to keep
the reflection information intact.

Now, with `ReflectionPackageName` annotation, this is not required
anymore.
2022-08-01 15:23:38 +02:00
Svyatoslav Scherbina cee0731cef [Native][tests] Keep reflection package name when renaming packages
The test engine renames packages in test files to allow group many tests
into single compilation for performance reasons.

As a result, reflection APIs return different package names. To deal
with this, the test engine uses certain heuristics to detect tests using
reflection APIs, and disables grouping (and thus package renaming) for
them.

This commit provides an alternative solution for the same problem --
now the test engine instructs the compiler to use original package names
for reflection information, by means of the introduced
`ReflectionPackageName` annotation.
2022-08-01 15:23:32 +02:00
Svyatoslav Scherbina 38723816b7 [Native][tests] Fix file annotation patching in test files
Previously, the test engine was copying @file:OptIn annotations from
each file to all the other files inside the same test data, and also was
removing other file annotations in certain cases.

Now it only adds the opt-ins specified with `!OPT_IN` directives, and
doesn't remove anything.
2022-08-01 15:23:19 +02:00
Mads Ager e46540729c Fix equality for generated test files.
They were compared based on the name of the file only disregarding
the module. Therefore, the test framework would only patch
package declarations for one file with a given name even if there
were multiple files with that name in different packages.
2022-08-01 08:57:17 +00:00
Dmitriy Dolovov b210e24b43 [Native][tests] Temporarily disable String codegen/box tests with "-opt" mode 2022-07-27 22:39:34 +00:00
Dmitriy Dolovov 5d234c0cdc [Native][tests] Ability to programmatically mute codegen/box & regular tests 2022-07-27 22:39:33 +00:00
Dmitriy Dolovov 8adb0528d7 [Native][tests] Don't use non-default runtime assertions mode with cache
^KT-53032
2022-07-20 14:43:08 +00:00
Dmitriy Dolovov 7bc0132cca [Native][tests] Don't fail tests on expected partial linkage warnings 2022-07-18 17:29:51 +02:00
Dmitriy Dolovov 66de825508 [Native][tests] Unmute klibABI/remove[Property|Function] tests
This reverts commit d60c93c1f8.
2022-07-18 17:29:50 +02:00
Dmitriy Dolovov 8283537673 [Native][tests] Don't fail tests on partial linkage warnings 2022-07-18 17:29:50 +02:00
Ilya Gorbunov cd9b36b4c3 Introduce OpenEndRange and make primitive ranges implement it
#KT-52932
2022-06-28 00:08:03 +00:00
Dmitriy Dolovov d60c93c1f8 [Native][tests] Temporarily mute klibABI/remove[Property|Function] tests 2022-06-20 12:30:01 +04:00
Dmitriy Dolovov c0cbd2e3ed [Native][tests] Fail tests on unexpected non-syntax/semantic warnings 2022-06-20 12:30:01 +04:00
Dmitriy Dolovov 34129d54e5 [Native][tests] Choose the appropriate cache mode for the target under test 2022-06-14 11:01:25 +00:00
Dmitriy Dolovov 48c4d4cf21 [Native][tests] Rename MemoryModel.DEFAULT to MemoryModel.LEGACY 2022-05-28 22:59:58 +03:00
Dmitriy Dolovov 70aaa212a5 [Native][tests] Track and report memory usage while tests are running 2022-05-24 10:39:30 +00:00
Dmitriy Dolovov 009e7f5c3a [Native][tests] Special logger to pass messages directly to Gradle console 2022-05-24 10:39:29 +00:00
Dmitriy Dolovov 6cf945f512 [Native][tests] Don't enforce test mode for KLIB ABI tests 2022-05-16 13:42:01 +00:00
Pavel Kunyavskiy 9801a21abb [K/N] Enable new mm for native by default 2022-05-11 10:26:13 +00:00
Dmitriy Dolovov 50de3d6257 [Native][tests] Add "compile only tests" mode 2022-05-06 15:02:59 +00:00
Dmitriy Dolovov e15000a6c2 [Native][tests] Add "force standalone tests" mode 2022-05-06 15:02:58 +00:00