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
Yan Zhulanow
0f6f22d76b
[Analysis API] Add API for code compilation
...
The API replaces 'KotlinCompilerIde' in the IntelliJ IDEA plugin.
Code moved to Analysis API as its K2 implementation severely depends on
the internal compiler API (FIR).
The API is going to be used in the JVM debugger evaluator, and in
the Bytecode Tool Window.
In this commit, only ordinary Kotlin are supported.
In later commits, there will be also support for 'KtCodeFragment' files,
as well as some test coverage.
2023-07-27 10:23:42 +00:00