Roman Efremov
29980c6b85
[Tests] Run KMP tests in Analysis API LL FIR test suites
...
New tests are red in current commit!
All `.ll.kt` files are just copies of `.fir.kt` or `.kt`. This will be
fixed in the next commit to clearly show difference between LL and FIR.
The original purpose of this change was to test
`ACTUAL_ANNOTATIONS_NOT_MATCH_EXPECT` diagnostic, for which FIR checker
will be run only in IDE (to be changed in next MR), so its reports
a lost from usual KMP tests.
But this looks like a useful change for all KMP tests, not only this
diagnostic.
^KT-62559
2023-11-10 19:36:09 +00:00
Ilya Kirillov
5f5daa0e06
[Decompiler] rename :analysis:decompiled:native -> :analysis:decompiled:decompiler-native
...
to avoid possible name clashes between different
Gradle subprojects with the same name.
see https://github.com/gradle/gradle/issues/16986
2023-11-10 06:41:03 +00:00
Ilya Kirillov
bffbbe6293
[LL FIR] add LL FIR tests based on AbstractFirPsiNativeDiagnosticsTest
...
^KT-62910 fixed
2023-11-10 06:41:03 +00:00
Ilya Kirillov
68235b978b
[Analysis] add test generator for Kotlin/Native tests inside Analysis API
...
This test generator is enabled only if Kotlin/Native support is enabled in the project
^KT-62910
2023-11-10 06:41:03 +00:00
Jaebaek Seo
e80f044847
K2: Update reference shortener to handle import alias
...
The existing reference shortener does not use import alias when it
shortens a symbol. Instead, it adds a new import directive for the
symbol that is already imported. This commit updates reference shortener
to let it reuse the existing import alias rather than adding a new one:
1. When shortening a symbol, check whether the symbol is already
imported.
2. If it is already imported by an import alias, keep the symbol
reference expression and the import alias as a string together in
`ShortenCommand`.
The actual PSI update (shortening) based on the ShortenCommand is done
by IntelliJ.
^KTIJ-27205
2023-11-09 14:34:38 +00:00
Jinseong Jeon
4110a9971a
AA: fix KtTypeProvider#getReceiverTypeForDoubleColonExpression
...
K1 version has used a wrong expression to retrieve the slice.
K2 version mishandled property access as a receiver.
^KT-63195 fixed
2023-11-08 16:18:21 +00:00
Anna Kozlova
205a125c5f
[AA] implement KtFirSimpleNameReference.getImportAlias
...
^ KT-62980 fixed
Merge-request: KT-MR-12786
Merged-by: Anna Kozlova <Anna.Kozlova@jetbrains.com >
2023-11-02 21:23:43 +00:00
Ilya Kirillov
1aa5cf031f
[Analysis API FIR] fix "ConeClassLikeTypeImpl is not resolved to symbol for on-error type"
...
We should not expect builtins to be always available as they are taken from indecies.
For K1 and FIR Standalone implementations, the builtins are always available.
^KT-62010 fixed
2023-10-31 12:24:16 +00:00
Roman Golyshev
a6668919b0
KTIJ-26423 [AA] Remove FE10 tests for KtImportOptimizer
...
We don't plan to seriously support the FE10 implementation of
`KtImportsOptimizer` service, since it's not going to be used in IDE
(it has its own old version of import optimization logic)
2023-10-25 20:53:13 +00:00
Dmitrii Gridin
2f8026f335
[LL FIR] add missed diagnostic tests for scripts
...
^KT-62840
^KT-62841
^KT-62861
2023-10-24 19:32:54 +00:00
Anna Kozlova
5cac013d8c
[AA] approximate inplace type parameters bounds
...
^ KTIJ-27211 fixed
2023-10-24 10:54:15 +00:00
Dmitrii Gridin
2eb761adae
[LL FIR] generate resolution tests over codegen/box testData
...
Such testData can contain contract violations and other resolution
problems, so we should check them as well
^KT-62776
^KT-62832
^KT-62834
^KT-62836
2023-10-24 10:30:55 +00:00
Dmitrii Gridin
17ab005668
[Analysis API FIR] KtSymbolContainingDeclarationProvider: support script declarations
...
This commit also fixes a missing symbol for KtScriptInitializer
and some symbol pointers
Many tests marked as 'DO_NOT_CHECK_NON_PSI_SYMBOL_RESTORE'
due to KtFirFileSymbol#createPointer logic – the pointer can
be created only for PSI
^KT-61451
^KT-61887
^KT-62626 Fixed
^KT-62693
2023-10-20 09:27:21 +00:00
Marco Pennekamp
239cfa6d29
[AA] Add tests for combined declared member scopes
...
^KT-61800
2023-10-10 13:38:00 +00:00
Marco Pennekamp
1408556511
[AA] Refactoring: Rename AbstractMemberScopeByFqNameTest to AbstractMemberScopeTest
...
^KT-61900
2023-10-10 13:38:00 +00:00
Marco Pennekamp
21efd6aff3
[AA] Add tests for *static* (declared) member scopes
...
^KT-61900
^KT-61800
2023-10-10 13:38:00 +00:00
Ilya Kirillov
15e4cbc10d
[Analysis API] implement an API to get a substitution based on an inheritance relationship between classes
...
^KT-62090 fixed
2023-10-06 11:39:33 +00:00
Anna Kozlova
da385210d8
[AA] provide psiType#asKtType conversion
...
it's useful for IDE's features such as write UAST or refactorings
^KT-62302 fixed
Merge-request: KT-MR-12414
Merged-by: Anna Kozlova <Anna.Kozlova@jetbrains.com >
2023-10-05 15:18:55 +00:00
Yan Zhulanow
834cbaac5a
[LL API] Run fir2ir separately for files in different modules
...
Each module may have its own compiler configuration.
^KTIJ-27061 Fixed
2023-09-21 06:19:15 +00:00
Dmitrii Gridin
11d86992c5
[SLC] update test data for 2.0 version
...
* disable compiled tests for scripts because they are not supported yet
* fix test data
^KT-60590 Fixed
2023-09-19 15:46:27 +00:00
Dmitrii Gridin
33e6a85a2d
[LL FIR] rename testdata to testData to avoid copyright generation
...
We exclude testData pattern from copyright scope
2023-09-18 21:12:45 +00:00
Alexander.Likhachev
6eaccc997f
[Build] Fix the typo junit jupyter -> jupiter
2023-09-06 22:47:34 +00:00
Alexander.Likhachev
6f96be0b76
[Build] Get rid of the testApiJUnit5 method
...
#KTI-1349 In Progress
2023-09-06 22:47:34 +00:00
Dmitrii Gridin
2421d3cdf1
[LL FIR] ClassId: add more tests
...
^KTIJ-26848
^KTIJ-26896
^KTIJ-26902
2023-09-05 12:58:50 +00:00
Pavel Kirpichenkov
cf98fb5612
[Tests] Add .knm stub consistency test
...
The test compares stub trees built from .knm files directly and from
the decompiled text. Test data for .class decompiler is reused,
JVM-specific cases are ignored
KT-61354
2023-09-05 09:36:25 +00:00
Roman Golyshev
90ed90c9a7
KT-61689 [LL API] Support scripts in ContextCollector tests
2023-09-04 18:02:20 +02:00
Yan Zhulanow
4b80c2197f
[Analysis API] Run code fragment compilation tests against libraries
2023-08-30 06:38:44 +00:00
Dmitrii Gridin
5557ea690d
[AA] add generated tests for scripts
...
^KT-61431
2023-08-28 15:02:24 +00:00
aleksandrina-streltsova
aa0eca6d6d
[AA] Provide KtCallableSymbol for static Java members
...
^KTIJ-25126 Fixed
2023-08-24 22:17:48 +03:00
Ilya Kirillov
2ce324f1fc
[Analysis API] rename AbstractSingleSymbolByPsi -> AbstractSingleSymbolByPsiTest
...
to match test naming convention
2023-08-17 13:01:02 +00:00
Dmitrii Gridin
d19a23aae5
[LL FIR] implement tests on dependent copy session analyze
...
^KT-60987
2023-08-09 15:22:57 +00:00
Dmitrii Gridin
734a3e5716
[LL FIR] do not create lazy bodies during on-air resolve in scripts
...
We assume that on-air resolve already has normal bodies,
so depending on this fact, we can omit some redundant work
^KT-61026 Fixed
2023-08-08 15:40:48 +00:00
Yan Zhulanow
4fbbe9f274
[LL API] Add in-body modification tests for code fragments
2023-08-07 16:22:03 +00:00
Yan Zhulanow
a09c2a485e
[LL API] Add basic tests for 'ContextCollector'
2023-08-07 16:22:02 +00:00
Yan Zhulanow
e1db3c88cf
[LL API] Support code fragment compilation
2023-08-07 16:22:01 +00:00
Yan Zhulanow
02af189066
[LL API] Support code fragment analysis
2023-08-07 16:22:01 +00:00
Ilya Kirillov
419c0c83e3
[stub builder] introduce a separate testsuite where classfiles generated by the K2 compiler
...
The result of k1/k2 should be similar here, the differences should be fixed by KT-60764
2023-07-31 15:38:07 +00:00
Dmitrii Gridin
e99cfbd3b7
[LL FIR] add script tests for AbstractFirLazyDeclarationResolveTest
...
^KT-60728
2023-07-28 00:13:59 +02:00
Dmitrii Gridin
1515fbe99f
[LL FIR] add script tests for AbstractGetOrBuildFirTest
...
^KT-60728
2023-07-28 00:13:59 +02:00
Dmitrii Gridin
a60abc6c06
[LL FIR] add script tests for AbstractInBlockModificationTest
...
^KT-60728
2023-07-28 00:13:59 +02:00
Dmitrii Gridin
e328aeee72
[LL FIR] add script tests for AbstractWholeFileResolvePhaseTest
...
^KT-60728
2023-07-27 12:02:05 +00:00
Dmitrii Gridin
167c247456
[LL FIR] rename AbstractInnerDeclarationsResolvePhaseTest to AbstractWholeFileResolvePhaseTest
...
^KT-60728
2023-07-27 12:02:05 +00:00
Dmitrii Gridin
b1b123efc0
[LL FIR] merge innerDeclarationsResolve testData to fileStructure
...
^KT-60728
2023-07-27 12:02:05 +00:00
Dmitrii Gridin
8a906004e3
[LL FIR] do not resolve declarations from script separately
...
It leads to exceptions because of race.
We shouldn't try to resolve a script and its content simultaneously,
because it is not thread-safe
^KT-60728
2023-07-27 12:02:05 +00:00
Dmitrii Gridin
6fa254c353
[LL FIR] merge diagnosticTraversalCounter testData to fileStructure
...
^KT-60728
2023-07-27 12:02:04 +00:00
Dmitrii Gridin
9970663a2b
[LL FIR] add script tests for AbstractFirContextCollectionTest
...
^KT-60728
2023-07-27 12:02:04 +00:00
Dmitrii Gridin
3ed5ccbb6f
[LL FIR] add script tests for AbstractFileStructureTest
...
^KT-60728
2023-07-27 12:02:04 +00:00
Dmitrii Gridin
e248d1a588
[LL FIR] add script tests for AbstractFileBasedKotlinDeclarationProviderTest
...
^KT-60728
2023-07-27 12:02:04 +00:00
Dmitrii Gridin
aa36e2ef5b
[LL FIR] add script tests for AbstractNonLocalDeclarationAnchorTest
...
^KT-60728
2023-07-27 12:02:04 +00:00
Dmitrii Gridin
60dc0ace47
[LL FIR] add script tests for AbstractClassIdTest
...
^KT-60728
2023-07-27 12:02:04 +00:00