Commit Graph

81421 Commits

Author SHA1 Message Date
Yahor Berdnikau 93230d72f5 Add build option to control Gradle parallelism.
Limit workers count, so when running tests parallel, they will not
compete over CPU usage.

^KT-45744 In Progress
2021-04-13 16:48:10 +03:00
Yahor Berdnikau 3c78c94fb1 Add configuration cache support to the default build options.
^KT-45744 In Progress
2021-04-13 16:48:08 +03:00
Yahor Berdnikau 8b393910d3 Add support for tests mute-in database in JUnit 5.
^KT-45744 In Progress
2021-04-13 16:48:07 +03:00
Yahor Berdnikau 7ffdafe791 Enable forwarding successful Gradle test output on demand.
^KT-45744 In Progress
2021-04-13 16:48:05 +03:00
Yahor Berdnikau 5b218bdad2 Set tests lifecycle to be 'PER_CLASS'.
Usually Gradle tests should be pretty isolated between each other to use
'PER_METHOD' lifecycle.

^KT-45744 In Progress
2021-04-13 16:48:03 +03:00
Yahor Berdnikau 40c525c4a6 Add '.testKitDir/' to '.gitignore' file.
^KT-45744 In Progress
2021-04-13 16:48:02 +03:00
Yahor Berdnikau 35a020340c Don't share temp directory between tests.
Apparently this causes problems on Windows CI runners.

^KT-45744 In Progress
2021-04-13 16:48:00 +03:00
Yahor Berdnikau 0ca4254cba Setup running tests against different Gradle versions.
^KT-45744 In Progress
2021-04-13 16:47:59 +03:00
Yahor Berdnikau 4583cd3634 Allow to add jupiter-params dependency.
^KT-45744 In Progress
2021-04-13 16:47:58 +03:00
Yahor Berdnikau 3dcac00aec Add basic file content transformations.
^KT-45744 In Progress
2021-04-13 16:47:57 +03:00
Yahor Berdnikau f5dfe7ce95 Automatically add 'pluginManagement' block to settings.gradle file.
Only in the case when it does not exist.
^KT-45744 In Progress
2021-04-13 16:47:56 +03:00
Yahor Berdnikau 9e2cdc7337 Add file or directory exists/does not exist assertions.
^KT-45744 In Progress
2021-04-13 16:47:55 +03:00
Yahor Berdnikau 710287920b Add initial setup to build common options.
^KT-45744 In Progress
2021-04-13 16:47:54 +03:00
Yahor Berdnikau 7549d14a36 Add Gradle output assertions.
^KT-45744 In Progress
2021-04-13 16:47:53 +03:00
Yahor Berdnikau b7864c1e43 Add tasks assertions.
^KT-45744 In Progress
2021-04-13 16:47:51 +03:00
Yahor Berdnikau e13f21e461 Add basic DSL based on Gradle TestKit for KGP integration tests.
^KT-45744 In Progress
2021-04-13 16:47:50 +03:00
Ivan Kochurkin 847ab40707 [FIR] Implement DIVISION_BY_ZERO diagnostics, fix tests 2021-04-13 16:22:08 +03:00
Ivan Kochurkin 964bba3530 [FIR] Implement FLOAT_LITERAL_OUT_OF_RANGE diagnostics, fix tests 2021-04-13 16:22:06 +03:00
Ivan Kochurkin 4cf30cd1fa [FIR] Implement INT_LITERAL_OUT_OF_RANGE diagnostics, fix tests 2021-04-13 16:22:05 +03:00
Ivan Kochurkin fb06da2d75 [FIR] Implement WRONG_LONG_SUFFIX diagnostics, fix tests 2021-04-13 16:22:03 +03:00
Vasily Levchenko 62ffc0033d [kotlin-native][test][dynamic test] tests provoking generating empty structs kt-42796 2021-04-13 12:10:58 +00:00
Vasily Levchenko 2adea2122e [kotlin-native][build][test infrostructure] don't ignore compiler exit code 2021-04-13 12:10:57 +00:00
Vasily Levchenko c68ac4f6b6 [interop][c][reverse] avoid generating empty structures for leaf packages without exportable declations
- fixes KT-42796
2021-04-13 12:10:57 +00:00
Roman Golyshev 0d7eb971ca Fix test data 2021-04-13 11:40:24 +00:00
Roman Golyshev e0fca9d2f6 FIR IDE: Add visibility checks to the completion
Visibility checks currently do not work in some cases, for example:

- public nested class of private class is seen globally
- private_for_this does not work
- some other cases I am not yet aware of

If `FirVisibilityChecker.isVisible` fix those issues, they will be fixed
automatically in the completion
2021-04-13 11:40:23 +00:00
Roman Golyshev 78b2324a51 Refactor KotlinFirCompletionContributor
Replace extensions checking lambdas with `ExtensionApplicabilityChecker`
type
2021-04-13 11:40:22 +00:00
Roman Golyshev 86348ed981 Refactor KotlinFirCompletionContributor
Remove some code duplication
2021-04-13 11:40:22 +00:00
Roman Golyshev ff71dda065 FIR IDE: Add KtVisibilityChecker component 2021-04-13 11:40:21 +00:00
Roman Golyshev 28d8d2d903 FIR IDE: Search for the first non-local declaration in EnclosingDeclarationContext::detect
Local declarations do not have a stable `ClassId`, which is used in
`declarationUtils.collectDesignation`. Local classes will always have
`outerClassId.isLocal = true`, even when it is not true (see
`org.jetbrains.kotlin.fir.builder.Context.currentClassId` for why this
happens)
2021-04-13 11:40:20 +00:00
Roman Golyshev 0d2158325a Remove redundant ticks from test data 2021-04-13 11:40:19 +00:00
Roman Golyshev fcd0168381 Refactor AbstractHighLevelMultiFileJvmBasicCompletionTest
Use `KotlinFixtureCompletionBaseTestCase` base because it can override
`getProjectDescriptor`, so the tests will see full JDK

Without it, there were problems when classes from JDK appeared in the
completion (`Serialization`, for example)
2021-04-13 11:40:18 +00:00
pyos cc7187e49b JVM_IR: cast argument of enumValueOf to String in bytecode
Generic functions and implicit casts may return a supertype instead.

 #KT-45865 Fixed
2021-04-13 13:24:24 +02:00
Anton Bannykh afaf3b5e28 JS PIR: replace deprecated toLowerCase with lowercase 2021-04-13 14:20:00 +03:00
Andrei Klunnyi 73d2e1a42d KT-46049 Java-Kotlin sealed inheritors inspection: refactoring 2021-04-13 12:34:07 +02:00
Andrei Klunnyi 2fce968de0 KT-46049 Java-Kotlin sealed inheritors inspection: false positive for type parameter
^KT-46049 Fixed
2021-04-13 12:34:07 +02:00
pyos 85b4668b7c JVM_IR: optimize more if-null chains
1. consider reads of fields from the same file "stable" just like
    functions, i.e. assume their nullability information is correct
 2. apply if-null fusion repeatedly until the subject is no longer a
    nested if-null expression
2021-04-13 11:48:36 +03:00
Denis.Zharkov 0b0a6d6ede Fix false positive ENCLOSING_SUSPEND_FUNCTION_FOR_SUSPEND_FUNCTION_CALL
Previously added additional processing at findEnclosingSuspendFunction
seems unnecessary anymore

^KT-43258 Fixed
2021-04-13 11:47:05 +03:00
Dmitriy Novozhilov 803d47daaa Distinguish classes from different sourcesets in SealedInheritorInSameModuleChecker
#KT-45848 Fixed
#KT-46031
2021-04-13 11:21:58 +03:00
Dmitriy Novozhilov 66e4d5664a [Test] Properly setup KtFile.isCommonSource in tests 2021-04-13 11:21:57 +03:00
Jinseong Jeon 619360fe4d FIR checker: report UNINITIALIZED_ENUM_(ENTRY|COMPANION) 2021-04-13 08:25:16 +03:00
Ivan Kochurkin ad9b962536 [FIR] Fix tests (ARGUMENT_TYPE_MISMATCH instead of INCOMPATIBLE_CANDIDATE) 2021-04-12 23:49:55 +03:00
Ivan Kochurkin 4ffab5fe5a [FIR] Add new test argParamTypeMismatch.kt for ARGUMENT_TYPE_MISMATCH diagnostics 2021-04-12 23:49:54 +03:00
Ivan Kochurkin a09b836334 [FIR] Add new ARGUMENT_TYPE_MISMATCH diagnostics and related classes, throw it in corresponding cases 2021-04-12 23:49:52 +03:00
Dmitry Petrov 7e03f8ea80 JVM_IR KT-45853 include return type into Java method IdSignature
This is a hack required to accept [potentially] incorrect input
provided by the front-end; see KT-46042.
2021-04-12 22:52:08 +03:00
Matthew Gharrity 5ce746f1ec ULC field has null nameIdentifier
KtUltraLightFieldForSourceDeclaration implements PsiField, for which
getNameIdentifier() is marked @NonNull, so some clients expect a
non-null return value.

#KT-45629 Fixed
2021-04-12 21:41:54 +03:00
Nikolay Krasko 6cbdcbe53b Trust zip with gradle sources 2021-04-12 20:10:42 +03:00
Jinseong Jeon 9af108df77 FIR LT: set source for destructured value parameter of lambda 2021-04-12 19:20:03 +03:00
Yahor Berdnikau c6aa5d1495 Fix plugin is using deprecated method that is removed in AGP 7.0.
^KT-45950 Fixed
2021-04-12 18:20:42 +03:00
Yahor Berdnikau 9100be4566 Set Android Gradle Plugin dependency version to 3.4.0.
This is required to get method deprecations and new proposed methods.
2021-04-12 18:20:41 +03:00
Dmitry Petrov f59b49db68 JVM_IR KT-45967 generate accessor for argument of indy intrinsic
TODO handle inaccessible constructors gracefully
2021-04-12 17:36:24 +03:00