Cleanup in idea plugin, src and tests
This commit is contained in:
@@ -42,7 +42,7 @@ public class KotlinFoldingBuilder : CustomFoldingBuilder(), DumbAware {
|
||||
return
|
||||
}
|
||||
val imports = root.getImportDirectives()
|
||||
if (imports.size() > 1) {
|
||||
if (imports.size > 1) {
|
||||
val importKeyword = imports.get(0).getFirstChild()
|
||||
val startOffset = importKeyword.endOffset + 1
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@ public class KotlinQuickDocumentationProvider : AbstractDocumentationProvider()
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val LOG = Logger.getInstance(javaClass<KotlinQuickDocumentationProvider>())
|
||||
private val LOG = Logger.getInstance(KotlinQuickDocumentationProvider::class.java)
|
||||
|
||||
private val DESCRIPTOR_RENDERER = DescriptorRenderer.HTML.withOptions {
|
||||
nameShortness = NameShortness.SHORT
|
||||
|
||||
@@ -42,7 +42,7 @@ public abstract class ConfigureKotlinInProjectAction : AnAction() {
|
||||
val configurators = getAbleToRunConfigurators(project)
|
||||
|
||||
when {
|
||||
configurators.size() == 1 -> configurators.first().configure(project)
|
||||
configurators.size == 1 -> configurators.first().configure(project)
|
||||
configurators.isEmpty() -> Messages.showErrorDialog("There aren't configurators available", e.getPresentation().getText()!!)
|
||||
else -> {
|
||||
Messages.showErrorDialog("More than one configurator is available", e.getPresentation().getText()!!)
|
||||
|
||||
@@ -68,7 +68,7 @@ public class JavaToKotlinAction : AnAction() {
|
||||
result.add(virtualFile)
|
||||
}
|
||||
catch (e: IOException) {
|
||||
MessagesEx.error(psiFile.getProject(), e.getMessage()).showLater()
|
||||
MessagesEx.error(psiFile.getProject(), e.message).showLater()
|
||||
}
|
||||
}
|
||||
return result
|
||||
|
||||
@@ -46,7 +46,7 @@ public class ShowExpressionTypeAction : AnAction() {
|
||||
val type = if (editor.getSelectionModel().hasSelection()) {
|
||||
val startOffset = editor.getSelectionModel().getSelectionStart()
|
||||
val endOffset = editor.getSelectionModel().getSelectionEnd()
|
||||
val expression = CodeInsightUtilCore.findElementInRange<KtExpression>(psiFile, startOffset, endOffset, javaClass<KtExpression>(), KotlinLanguage.INSTANCE) ?: return
|
||||
val expression = CodeInsightUtilCore.findElementInRange<KtExpression>(psiFile, startOffset, endOffset, KtExpression::class.java, KotlinLanguage.INSTANCE) ?: return
|
||||
typeByExpression(expression)
|
||||
}
|
||||
else {
|
||||
|
||||
+1
-1
@@ -179,7 +179,7 @@ abstract class KotlinGenerateTestSupportActionBase(
|
||||
setupEditorSelection(editor, functionInPlace)
|
||||
}
|
||||
catch (e: IncorrectOperationException) {
|
||||
HintManager.getInstance().showErrorHint(editor, "Cannot generate method: " + e.getMessage())
|
||||
HintManager.getInstance().showErrorHint(editor, "Cannot generate method: " + e.message)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -66,7 +66,7 @@ public class CheckPartialBodyResolveAction : AnAction() {
|
||||
//TODO: drop resolve caches if any
|
||||
val progressIndicator = ProgressManager.getInstance().getProgressIndicator()
|
||||
for ((i, file) in files.withIndex()) {
|
||||
progressIndicator?.setText("Checking resolve $i of ${files.size()}...")
|
||||
progressIndicator?.setText("Checking resolve $i of ${files.size}...")
|
||||
progressIndicator?.setText2(file.getVirtualFile().getPath())
|
||||
|
||||
val partialResolveDump = dumpResolve(file) { element, resolutionFacade ->
|
||||
@@ -96,11 +96,11 @@ public class CheckPartialBodyResolveAction : AnAction() {
|
||||
return
|
||||
}
|
||||
|
||||
progressIndicator?.setFraction((i + 1) / files.size().toDouble())
|
||||
progressIndicator?.setFraction((i + 1) / files.size.toDouble())
|
||||
}
|
||||
|
||||
SwingUtilities.invokeLater {
|
||||
Messages.showInfoMessage(project, "Analyzed ${files.size()} file(s). No resolve difference found. ", "Success")
|
||||
Messages.showInfoMessage(project, "Analyzed ${files.size} file(s). No resolve difference found. ", "Success")
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ public class FindImplicitNothingAction : AnAction() {
|
||||
val progressIndicator = ProgressManager.getInstance().getProgressIndicator()
|
||||
val found = ArrayList<KtCallExpression>()
|
||||
for ((i, file) in files.withIndex()) {
|
||||
progressIndicator?.setText("Scanning files: $i of ${files.size()} file. ${found.size()} occurences found")
|
||||
progressIndicator?.setText("Scanning files: $i of ${files.size} file. ${found.size} occurences found")
|
||||
progressIndicator?.setText2(file.getVirtualFile().getPath())
|
||||
|
||||
val resolutionFacade = file.getResolutionFacade()
|
||||
@@ -91,7 +91,7 @@ public class FindImplicitNothingAction : AnAction() {
|
||||
}
|
||||
})
|
||||
|
||||
progressIndicator?.setFraction((i + 1) / files.size().toDouble())
|
||||
progressIndicator?.setFraction((i + 1) / files.size.toDouble())
|
||||
}
|
||||
|
||||
SwingUtilities.invokeLater {
|
||||
@@ -102,7 +102,7 @@ public class FindImplicitNothingAction : AnAction() {
|
||||
UsageViewManager.getInstance(project).showUsages(arrayOf<UsageTarget>(), usages, presentation)
|
||||
}
|
||||
else {
|
||||
Messages.showInfoMessage(project, "Not found in ${files.size()} file(s)", "Not Found")
|
||||
Messages.showInfoMessage(project, "Not found in ${files.size} file(s)", "Not Found")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ public class FileAttributeServiceImpl : FileAttributeService {
|
||||
|
||||
attribute.writeAttribute(file).use {
|
||||
DataInputOutputUtil.writeTIME(it, data.timeStamp)
|
||||
DataInputOutputUtil.writeINT(it, data.value?.ordinal() ?: -1)
|
||||
DataInputOutputUtil.writeINT(it, data.value?.ordinal ?: -1)
|
||||
}
|
||||
|
||||
return data
|
||||
|
||||
@@ -65,7 +65,7 @@ import java.util.*
|
||||
|
||||
//NOTE: this class is based on CopyPasteReferenceProcessor and JavaCopyPasteReferenceProcessor
|
||||
public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<KotlinReferenceTransferableData>() {
|
||||
private val LOG = Logger.getInstance(javaClass<KotlinCopyPasteReferenceProcessor>())
|
||||
private val LOG = Logger.getInstance(KotlinCopyPasteReferenceProcessor::class.java)
|
||||
|
||||
private val IGNORE_REFERENCES_INSIDE: Array<Class<out KtElement>> = arrayOf(
|
||||
KtImportList::class.java,
|
||||
@@ -144,7 +144,7 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
|
||||
|
||||
val descriptors = reference.resolveToDescriptors(element.analyze()) //TODO: we could use partial body resolve for all references together
|
||||
//check whether this reference is unambiguous
|
||||
if (reference !is KtMultiReference<*> && descriptors.size() > 1) return@forEachDescendantOfType
|
||||
if (reference !is KtMultiReference<*> && descriptors.size > 1) return@forEachDescendantOfType
|
||||
|
||||
for (descriptor in descriptors) {
|
||||
val declarations = DescriptorToSourceUtilsIde.getAllDeclarations(file.getProject(), descriptor)
|
||||
@@ -302,7 +302,7 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
|
||||
private fun findImportableDescriptors(fqName: FqName, file: KtFile): Collection<DeclarationDescriptor> {
|
||||
return file.resolveImportReference(fqName).filterNot {
|
||||
/*TODO: temporary hack until we don't have ability to insert qualified reference into root package*/
|
||||
DescriptorUtils.getParentOfType(it, javaClass<PackageFragmentDescriptor>())?.fqName?.isRoot() ?: false
|
||||
DescriptorUtils.getParentOfType(it, PackageFragmentDescriptor::class.java)?.fqName?.isRoot() ?: false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -329,7 +329,7 @@ public class KotlinCopyPasteReferenceProcessor() : CopyPastePostProcessor<Kotlin
|
||||
}
|
||||
|
||||
private fun toTextRanges(startOffsets: IntArray, endOffsets: IntArray): List<TextRange> {
|
||||
assert(startOffsets.size() == endOffsets.size())
|
||||
assert(startOffsets.size == endOffsets.size)
|
||||
return startOffsets.indices.map { TextRange(startOffsets[it], endOffsets[it]) }
|
||||
}
|
||||
|
||||
|
||||
@@ -29,7 +29,7 @@ public class KotlinReferenceTransferableData(
|
||||
|
||||
override fun getFlavor() = KotlinReferenceData.dataFlavor
|
||||
|
||||
override fun getOffsetCount() = data.size() * 2
|
||||
override fun getOffsetCount() = data.size * 2
|
||||
|
||||
override fun getOffsets(offsets: IntArray, index: Int): Int {
|
||||
var i = index
|
||||
@@ -49,7 +49,7 @@ public class KotlinReferenceTransferableData(
|
||||
return i
|
||||
}
|
||||
|
||||
public override fun clone() = KotlinReferenceTransferableData(Array(data.size(), { data[it].clone() }))
|
||||
public override fun clone() = KotlinReferenceTransferableData(Array(data.size, { data[it].clone() }))
|
||||
}
|
||||
|
||||
public class KotlinReferenceData(
|
||||
@@ -100,7 +100,7 @@ public class KotlinReferenceData(
|
||||
companion object {
|
||||
public val dataFlavor: DataFlavor? by lazy {
|
||||
try {
|
||||
val dataClass = javaClass<KotlinReferenceData>()
|
||||
val dataClass = KotlinReferenceData::class.java
|
||||
DataFlavor(DataFlavor.javaJVMLocalObjectMimeType + ";class=" + dataClass.getName(),
|
||||
"KotlinReferenceData",
|
||||
dataClass.getClassLoader())
|
||||
|
||||
+5
-5
@@ -145,7 +145,7 @@ public class ConvertJavaCopyPastePostProcessor : CopyPastePostProcessor<TextBloc
|
||||
val startOffset = bounds.getStartOffset()
|
||||
document.replaceString(startOffset, bounds.getEndOffset(), text)
|
||||
|
||||
val endOffsetAfterCopy = startOffset + text.length()
|
||||
val endOffsetAfterCopy = startOffset + text.length
|
||||
editor.getCaretModel().moveToOffset(endOffsetAfterCopy)
|
||||
|
||||
var newBounds = insertImports(TextRange(startOffset, endOffsetAfterCopy), referenceData, explicitImports)
|
||||
@@ -211,7 +211,7 @@ public class ConvertJavaCopyPastePostProcessor : CopyPastePostProcessor<TextBloc
|
||||
private fun buildReferenceData(text: String, parseContext: ParseContext, importsAndPackage: String, targetFile: KtFile): Collection<KotlinReferenceData> {
|
||||
var blockStart: Int? = null
|
||||
var blockEnd: Int? = null
|
||||
val fileText = StringBuilder {
|
||||
val fileText = buildString {
|
||||
append(importsAndPackage)
|
||||
|
||||
val (contextPrefix, contextSuffix) = when (parseContext) {
|
||||
@@ -221,12 +221,12 @@ public class ConvertJavaCopyPastePostProcessor : CopyPastePostProcessor<TextBloc
|
||||
|
||||
append(contextPrefix)
|
||||
|
||||
blockStart = length()
|
||||
blockStart = length
|
||||
append(text)
|
||||
blockEnd = length()
|
||||
blockEnd = length
|
||||
|
||||
append(contextSuffix)
|
||||
}.toString()
|
||||
}
|
||||
|
||||
val dummyFile = KtPsiFactory(targetFile.getProject()).createAnalyzableFile("dummy.kt", fileText, targetFile)
|
||||
|
||||
|
||||
@@ -29,6 +29,6 @@ class CopiedJavaCode(val fileText: String, val startOffsets: IntArray, val endOf
|
||||
public override fun setOffsets(offsets: IntArray?, index: Int) = index
|
||||
|
||||
companion object {
|
||||
val DATA_FLAVOR: DataFlavor = DataFlavor(javaClass<ConvertJavaCopyPastePostProcessor>(), "class: ConvertJavaCopyPastePostProcessor")
|
||||
val DATA_FLAVOR: DataFlavor = DataFlavor(ConvertJavaCopyPastePostProcessor::class.java, "class: ConvertJavaCopyPastePostProcessor")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ data class DataForConversion private constructor(
|
||||
fun prepare(copiedCode: CopiedJavaCode, project: Project): DataForConversion {
|
||||
val startOffsets = copiedCode.startOffsets.clone()
|
||||
val endOffsets = copiedCode.endOffsets.clone()
|
||||
assert(startOffsets.size() == endOffsets.size()) { "Must have the same size" }
|
||||
assert(startOffsets.size == endOffsets.size) { "Must have the same size" }
|
||||
|
||||
var fileText = copiedCode.fileText
|
||||
var file = PsiFileFactory.getInstance(project).createFileFromText(JavaLanguage.INSTANCE, fileText) as PsiJavaFile
|
||||
@@ -98,15 +98,15 @@ data class DataForConversion private constructor(
|
||||
|
||||
if (rangesToDrop.isEmpty()) return null
|
||||
|
||||
val newFileText = StringBuilder {
|
||||
val newFileText = buildString {
|
||||
var offset = 0
|
||||
for (range in rangesToDrop) {
|
||||
assert(range.start >= offset)
|
||||
append(fileText.substring(offset, range.start))
|
||||
offset = range.end
|
||||
}
|
||||
append(fileText.substring(offset, fileText.length()))
|
||||
}.toString()
|
||||
append(fileText.substring(offset, fileText.length))
|
||||
}
|
||||
|
||||
fun IntArray.update() {
|
||||
for (range in rangesToDrop.asReversed()) {
|
||||
@@ -226,7 +226,7 @@ data class DataForConversion private constructor(
|
||||
private fun shouldExpandToChildren(element: PsiElement) = element is PsiModifierList
|
||||
|
||||
private fun buildImportsAndPackage(sourceFile: PsiJavaFile): String {
|
||||
return StringBuilder {
|
||||
return buildString {
|
||||
val packageName = sourceFile.getPackageName()
|
||||
if (!packageName.isEmpty()) {
|
||||
append("package $packageName\n")
|
||||
@@ -248,7 +248,7 @@ data class DataForConversion private constructor(
|
||||
}
|
||||
//TODO: static imports
|
||||
}
|
||||
}.toString()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -40,7 +40,7 @@ import org.jetbrains.kotlin.psi.KtFile
|
||||
import java.io.File
|
||||
|
||||
public class KotlinCoverageExtension(): JavaCoverageEngineExtension() {
|
||||
private val LOG = Logger.getInstance(javaClass<KotlinCoverageExtension>())
|
||||
private val LOG = Logger.getInstance(KotlinCoverageExtension::class.java)
|
||||
|
||||
override fun isApplicableTo(conf: RunConfigurationBase?): Boolean = conf is JetRunConfiguration
|
||||
|
||||
@@ -96,7 +96,7 @@ public class KotlinCoverageExtension(): JavaCoverageEngineExtension() {
|
||||
}
|
||||
|
||||
companion object {
|
||||
private val LOG = Logger.getInstance(javaClass<KotlinCoverageExtension>())
|
||||
private val LOG = Logger.getInstance(KotlinCoverageExtension::class.java)
|
||||
|
||||
fun collectGeneratedClassQualifiedNames(outputRoot: VirtualFile?, file: KtFile): List<String>? {
|
||||
val existingClassFiles = getClassesGeneratedFromFile(outputRoot, file)
|
||||
|
||||
@@ -37,7 +37,7 @@ import org.jetbrains.kotlin.psi.psiUtil.*
|
||||
|
||||
public class KotlinEnterHandler: EnterHandlerDelegateAdapter() {
|
||||
companion object {
|
||||
private val LOG = Logger.getInstance(javaClass<KotlinEnterHandler>())
|
||||
private val LOG = Logger.getInstance(KotlinEnterHandler::class.java)
|
||||
private val FORCE_INDENT_IN_LAMBDA_AFTER = TokenSet.create(KtTokens.ARROW, KtTokens.LBRACE)
|
||||
}
|
||||
|
||||
@@ -61,7 +61,7 @@ public class KotlinEnterHandler: EnterHandlerDelegateAdapter() {
|
||||
val text = document.getCharsSequence()
|
||||
val caretOffset = caretOffsetRef.get()!!.toInt()
|
||||
|
||||
if (caretOffset !in 0..text.length()) return EnterHandlerDelegate.Result.Continue
|
||||
if (caretOffset !in 0..text.length) return EnterHandlerDelegate.Result.Continue
|
||||
|
||||
val elementAt = file.findElementAt(caretOffset)
|
||||
if (elementAt is PsiWhiteSpace && ("\n" in elementAt.getText()!!)) return EnterHandlerDelegate.Result.Continue
|
||||
|
||||
@@ -92,8 +92,8 @@ public class KotlinSmartEnterHandler: SmartEnterProcessorWithFixers() {
|
||||
|
||||
caretOffset = CharArrayUtil.shiftBackward(chars, caretOffset - 1, " \t") + 1
|
||||
|
||||
if (CharArrayUtil.regionMatches(chars, caretOffset - "{}".length(), "{}") ||
|
||||
CharArrayUtil.regionMatches(chars, caretOffset - "{\n}".length(), "{\n}")) {
|
||||
if (CharArrayUtil.regionMatches(chars, caretOffset - "{}".length, "{}") ||
|
||||
CharArrayUtil.regionMatches(chars, caretOffset - "{\n}".length, "{\n}")) {
|
||||
commit(editor)
|
||||
val settings = CodeStyleSettingsManager.getSettings(file.getProject())
|
||||
val old = settings.KEEP_SIMPLE_BLOCKS_IN_ONE_LINE
|
||||
|
||||
@@ -34,16 +34,16 @@ public class KotlinDoWhileFixer : SmartEnterProcessorWithFixers.Fixer<KotlinSmar
|
||||
val whileKeyword = psiElement.getWhileKeyword()
|
||||
if (body == null) {
|
||||
if (whileKeyword == null) {
|
||||
doc.replaceString(start, start + "do".length(), "do {} while()")
|
||||
doc.replaceString(start, start + "do".length, "do {} while()")
|
||||
}
|
||||
else {
|
||||
doc.insertString(start + "do".length(), "{}")
|
||||
doc.insertString(start + "do".length, "{}")
|
||||
}
|
||||
return
|
||||
}
|
||||
else if (whileKeyword != null && body !is KtBlockExpression && body.startLine(doc) > psiElement.startLine(doc)) {
|
||||
doc.insertString(whileKeyword.range.start, "}")
|
||||
doc.insertString(start + "do".length(), "{")
|
||||
doc.insertString(start + "do".length, "{")
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
@@ -42,7 +42,7 @@ abstract class MissingConditionFixer<T: PsiElement>() : SmartEnterProcessorWithF
|
||||
stopOffset = Math.min(stopOffset, workElement.range.end)
|
||||
|
||||
doc.replaceString(workElement.range.start, stopOffset, "$keyword ()")
|
||||
processor.registerUnresolvedError(workElement.range.start + "$keyword (".length())
|
||||
processor.registerUnresolvedError(workElement.range.start + "$keyword (".length)
|
||||
}
|
||||
else {
|
||||
processor.registerUnresolvedError(lParen.range.end)
|
||||
|
||||
@@ -36,7 +36,7 @@ public class KotlinDeclarationGroupRuleProvider : FileStructureGroupRuleProvider
|
||||
val containingFile = element.getContainingFile()
|
||||
if (containingFile !is KtFile) return null
|
||||
|
||||
return PsiTreeUtil.getTopmostParentOfType(element, javaClass<KtNamedDeclaration>())?.let { container ->
|
||||
return PsiTreeUtil.getTopmostParentOfType(element, KtNamedDeclaration::class.java)?.let { container ->
|
||||
PsiNamedElementUsageGroupBase(container)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -120,7 +120,7 @@ public class KotlinFindUsagesHandlerFactory(project: Project) : FindUsagesHandle
|
||||
}
|
||||
|
||||
private fun handlerForMultiple(originalDeclaration: KtNamedDeclaration, declarations: Collection<PsiElement>): FindUsagesHandler {
|
||||
return when (declarations.size()) {
|
||||
return when (declarations.size) {
|
||||
0 -> FindUsagesHandler.NULL_HANDLER
|
||||
|
||||
1 -> {
|
||||
|
||||
@@ -44,7 +44,7 @@ fun SpacingBuilder.afterInside(element: IElementType, tokenSet: TokenSet, spacin
|
||||
}
|
||||
|
||||
fun createSpacingBuilder(settings: CodeStyleSettings): KotlinSpacingBuilder {
|
||||
val jetSettings = settings.getCustomSettings(javaClass<KotlinCodeStyleSettings>())!!
|
||||
val jetSettings = settings.getCustomSettings(KotlinCodeStyleSettings::class.java)!!
|
||||
val jetCommonSettings = settings.getCommonSettings(KotlinLanguage.INSTANCE)!!
|
||||
|
||||
return rules(settings) {
|
||||
|
||||
@@ -93,7 +93,7 @@ var <PROPERTY_WITH_BACKING_FIELD><PACKAGE_PROPERTY><MUTABLE_VARIABLE>globalCount
|
||||
|
||||
override fun getAdditionalHighlightingTagToDescriptorMap(): Map<String, TextAttributesKey> {
|
||||
val map = HashMap<String, TextAttributesKey>()
|
||||
for (field in javaClass<KotlinHighlightingColors>().getFields()) {
|
||||
for (field in KotlinHighlightingColors::class.java.getFields()) {
|
||||
if (Modifier.isStatic(field.getModifiers())) {
|
||||
try {
|
||||
map.put(field.getName(), field.get(null) as TextAttributesKey)
|
||||
|
||||
+2
-2
@@ -44,8 +44,8 @@ public class KotlinHighlightExitPointsHandlerFactory: HighlightUsagesHandlerFact
|
||||
if (target is LeafPsiElement && (target.getElementType() in RETURN_AND_THROW)) {
|
||||
val returnOrThrow = PsiTreeUtil.getParentOfType<KtExpression>(
|
||||
target,
|
||||
javaClass<KtReturnExpression>(),
|
||||
javaClass<KtThrowExpression>()
|
||||
KtReturnExpression::class.java,
|
||||
KtThrowExpression::class.java
|
||||
) ?: return null
|
||||
|
||||
return MyHandler(editor, file, returnOrThrow)
|
||||
|
||||
@@ -168,7 +168,7 @@ private fun collectOverriddenPropertyAccessors(properties: Collection<KtProperty
|
||||
}
|
||||
}
|
||||
|
||||
val classes = collectContainingClasses(mappingToJava.keySet())
|
||||
val classes = collectContainingClasses(mappingToJava.keys)
|
||||
|
||||
for (property in getOverriddenDeclarations(mappingToJava, classes)) {
|
||||
ProgressManager.checkCanceled()
|
||||
@@ -198,7 +198,7 @@ private fun collectOverriddenFunctions(functions: Collection<KtNamedFunction>, r
|
||||
}
|
||||
}
|
||||
|
||||
val classes = collectContainingClasses(mappingToJava.keySet())
|
||||
val classes = collectContainingClasses(mappingToJava.keys)
|
||||
|
||||
for (function in getOverriddenDeclarations(mappingToJava, classes)) {
|
||||
ProgressManager.checkCanceled()
|
||||
|
||||
@@ -120,7 +120,7 @@ public fun navigateToOverriddenMethod(e: MouseEvent?, method: PsiMethod) {
|
||||
PsiElementListNavigator.openTargets(
|
||||
e,
|
||||
overridingJavaMethods.toTypedArray(),
|
||||
methodsUpdater.getCaption(overridingJavaMethods.size()),
|
||||
methodsUpdater.getCaption(overridingJavaMethods.size),
|
||||
"Overriding declarations of " + method.getName(),
|
||||
renderer,
|
||||
methodsUpdater)
|
||||
|
||||
@@ -239,13 +239,13 @@ public class KotlinImportOptimizer() : ImportOptimizer {
|
||||
}
|
||||
|
||||
//TODO: drop unused aliases?
|
||||
aliasImports.mapTo(importsToGenerate) { ImportPath(it.getValue(), false, it.getKey())}
|
||||
aliasImports.mapTo(importsToGenerate) { ImportPath(it.value, false, it.key)}
|
||||
|
||||
val sortedImportsToGenerate = importsToGenerate.sortedWith(importInsertHelper.importSortComparator)
|
||||
|
||||
// check if no changes to imports required
|
||||
val oldImports = file.importDirectives
|
||||
if (oldImports.size() == sortedImportsToGenerate.size() && oldImports.map { it.importPath } == sortedImportsToGenerate) return null
|
||||
if (oldImports.size == sortedImportsToGenerate.size && oldImports.map { it.importPath } == sortedImportsToGenerate) return null
|
||||
|
||||
return sortedImportsToGenerate
|
||||
}
|
||||
|
||||
+1
-1
@@ -197,7 +197,7 @@ public class ConflictingExtensionPropertyInspection : AbstractKotlinInspection()
|
||||
ReferencesSearch.search(declaration, searchScope)
|
||||
.filterIsInstance<KtSimpleNameReference>()
|
||||
.mapNotNull { ref -> ref.expression.getStrictParentOfType<KtImportDirective>() }
|
||||
.filter { import -> !import.isAllUnder && import.targetDescriptors().size() == 1 }
|
||||
.filter { import -> !import.isAllUnder && import.targetDescriptors().size == 1 }
|
||||
}
|
||||
UIUtil.invokeLaterIfNeeded {
|
||||
project.executeWriteCommand(text) {
|
||||
|
||||
+2
-2
@@ -75,13 +75,13 @@ class KotlinInvalidBundleOrPropertyInspection : AbstractKotlinInspection() {
|
||||
if (keyArgumentIndex < 0) return
|
||||
|
||||
val callable = resolvedCall.resultingDescriptor
|
||||
if (callable.valueParameters.size() != keyArgumentIndex + 2) return
|
||||
if (callable.valueParameters.size != keyArgumentIndex + 2) return
|
||||
|
||||
val messageArgument = resolvedArguments[keyArgumentIndex + 1] as? VarargValueArgument ?: return
|
||||
if (messageArgument.arguments.singleOrNull()?.getSpreadElement() != null) return
|
||||
|
||||
val expectedArgumentCount = JavaI18nUtil.getPropertyValuePlaceholdersCount(property.value ?: "")
|
||||
val actualArgumentCount = messageArgument.arguments.size()
|
||||
val actualArgumentCount = messageArgument.arguments.size
|
||||
if (actualArgumentCount < expectedArgumentCount) {
|
||||
val description = CodeInsightBundle.message(
|
||||
"property.has.more.parameters.than.passed",
|
||||
|
||||
@@ -85,7 +85,7 @@ class KotlinUnusedImportInspection : AbstractKotlinInspection() {
|
||||
|
||||
val problems = ArrayList<ProblemDescriptor>()
|
||||
|
||||
val importPaths = HashSet<ImportPath>(directives.size())
|
||||
val importPaths = HashSet<ImportPath>(directives.size)
|
||||
|
||||
for (directive in directives) {
|
||||
val importPath = directive.importPath ?: continue
|
||||
|
||||
@@ -35,7 +35,7 @@ import org.jetbrains.kotlin.j2k.content
|
||||
|
||||
object IdeaDocCommentConverter : DocCommentConverter {
|
||||
override fun convertDocComment(docComment: PsiDocComment): String {
|
||||
val html = StringBuilder {
|
||||
val html = buildString {
|
||||
appendJavadocElements(docComment.getDescriptionElements())
|
||||
|
||||
tagsLoop@
|
||||
@@ -46,7 +46,7 @@ object IdeaDocCommentConverter : DocCommentConverter {
|
||||
else -> appendJavadocElements(tag.getChildren()).append("\n")
|
||||
}
|
||||
}
|
||||
}.toString()
|
||||
}
|
||||
|
||||
if (html.trim().isEmpty() && docComment.findTagByName("deprecated") != null) {
|
||||
// @deprecated was the only content of the doc comment; we can drop the comment
|
||||
|
||||
@@ -118,7 +118,7 @@ object J2KPostProcessingRegistrar {
|
||||
) {
|
||||
_processings.add(object : J2kPostProcessing {
|
||||
override fun createAction(element: KtElement, diagnostics: Diagnostics): (() -> Unit)? {
|
||||
if (!javaClass<TElement>().isInstance(element)) return null
|
||||
if (!TElement::class.java.isInstance(element)) return null
|
||||
val tElement = element as TElement
|
||||
if (intention.applicabilityRange(tElement) == null) return null
|
||||
if (!additionalChecker(tElement)) return null
|
||||
@@ -140,7 +140,7 @@ object J2KPostProcessingRegistrar {
|
||||
) {
|
||||
_processings.add(object : J2kPostProcessing {
|
||||
override fun createAction(element: KtElement, diagnostics: Diagnostics): (() -> Unit)? {
|
||||
if (!javaClass<TElement>().isInstance(element)) return null
|
||||
if (!TElement::class.java.isInstance(element)) return null
|
||||
val diagnostic = diagnostics.forElement(element).firstOrNull { it.factory == diagnosticFactory } ?: return null
|
||||
return fixFactory(element as TElement, diagnostic)
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ object KDocRenderer {
|
||||
else {
|
||||
to.append(tag.getContent())
|
||||
}
|
||||
if (index < seeTags.size() - 1) {
|
||||
if (index < seeTags.size - 1) {
|
||||
to.append(", ")
|
||||
}
|
||||
}
|
||||
@@ -211,8 +211,8 @@ object KDocRenderer {
|
||||
}
|
||||
|
||||
fun StringBuilder.trimEnd() {
|
||||
while (length() > 0 && this[length() - 1] == ' ') {
|
||||
deleteCharAt(length() - 1)
|
||||
while (length > 0 && this[length - 1] == ' ') {
|
||||
deleteCharAt(length - 1)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+11
-11
@@ -160,7 +160,7 @@ abstract class KotlinParameterInfoWithCallHandlerBase<TArgumentList : KtElement,
|
||||
|
||||
var boldStartOffset = -1
|
||||
var boldEndOffset = -1
|
||||
val text = StringBuilder {
|
||||
val text = buildString {
|
||||
val usedParameterIndices = HashSet<Int>()
|
||||
var namedMode = false
|
||||
|
||||
@@ -172,19 +172,19 @@ abstract class KotlinParameterInfoWithCallHandlerBase<TArgumentList : KtElement,
|
||||
val includeParameterNames = !substitutedDescriptor.hasSynthesizedParameterNames()
|
||||
|
||||
fun appendParameter(parameter: ValueParameterDescriptor) {
|
||||
if (length() > 0) {
|
||||
if (length > 0) {
|
||||
append(", ")
|
||||
}
|
||||
|
||||
val highlightParameter = parameter.index == highlightParameterIndex
|
||||
if (highlightParameter) {
|
||||
boldStartOffset = length()
|
||||
boldStartOffset = length
|
||||
}
|
||||
|
||||
append(renderParameter(parameter, includeParameterNames, namedMode, project))
|
||||
|
||||
if (highlightParameter) {
|
||||
boldEndOffset = length()
|
||||
boldEndOffset = length
|
||||
}
|
||||
}
|
||||
|
||||
@@ -206,10 +206,10 @@ abstract class KotlinParameterInfoWithCallHandlerBase<TArgumentList : KtElement,
|
||||
}
|
||||
}
|
||||
|
||||
if (length() == 0) {
|
||||
if (length == 0) {
|
||||
append(CodeInsightBundle.message("parameter.info.no.parameters"))
|
||||
}
|
||||
}.toString()
|
||||
}
|
||||
|
||||
|
||||
val color = if (isResolvedToDescriptor(call, itemToShow, bindingContext))
|
||||
@@ -234,7 +234,7 @@ abstract class KotlinParameterInfoWithCallHandlerBase<TArgumentList : KtElement,
|
||||
override fun getParametersForDocumentation(item: FunctionDescriptor, context: ParameterInfoContext) = emptyArray<Any>()
|
||||
|
||||
private fun renderParameter(parameter: ValueParameterDescriptor, includeName: Boolean, named: Boolean, project: Project): String {
|
||||
return StringBuilder {
|
||||
return buildString {
|
||||
if (named) append("[")
|
||||
|
||||
if (parameter.varargElementType != null) {
|
||||
@@ -254,14 +254,14 @@ abstract class KotlinParameterInfoWithCallHandlerBase<TArgumentList : KtElement,
|
||||
}
|
||||
|
||||
if (named) append("]")
|
||||
}.toString()
|
||||
}
|
||||
}
|
||||
|
||||
private fun ValueParameterDescriptor.renderDefaultValue(project: Project): String {
|
||||
val expression = OptionalParametersHelper.defaultParameterValueExpression(this, project)
|
||||
if (expression != null) {
|
||||
val text = expression.text
|
||||
if (text.length() <= 32) {
|
||||
if (text.length <= 32) {
|
||||
return text
|
||||
}
|
||||
|
||||
@@ -313,13 +313,13 @@ abstract class KotlinParameterInfoWithCallHandlerBase<TArgumentList : KtElement,
|
||||
return SignatureInfo(overload, { null }, null, isGrey = false)
|
||||
}
|
||||
|
||||
assert(call.valueArguments.size() >= currentArgumentIndex)
|
||||
assert(call.valueArguments.size >= currentArgumentIndex)
|
||||
|
||||
val argumentsBeforeCurrent = call.valueArguments.subList(0, currentArgumentIndex)
|
||||
|
||||
val callToUse: Call
|
||||
val currentArgument: ValueArgument
|
||||
if (call.valueArguments.size() > currentArgumentIndex) {
|
||||
if (call.valueArguments.size > currentArgumentIndex) {
|
||||
currentArgument = call.valueArguments[currentArgumentIndex]
|
||||
callToUse = call
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ private val PROPERTY_KEY = FqName(AnnotationUtil.PROPERTY_KEY)
|
||||
private val PROPERTY_KEY_RESOURCE_BUNDLE = Name.identifier(AnnotationUtil.PROPERTY_KEY_RESOURCE_BUNDLE_PARAMETER)
|
||||
|
||||
private fun AnnotationDescriptor.getBundleName(): String? {
|
||||
return allValueArguments.entrySet().singleOrNull { it.key.name == PROPERTY_KEY_RESOURCE_BUNDLE }?.value?.value as? String
|
||||
return allValueArguments.entries.singleOrNull { it.key.name == PROPERTY_KEY_RESOURCE_BUNDLE }?.value?.value as? String
|
||||
}
|
||||
|
||||
private fun DeclarationDescriptor.getBundleNameByAnnotation(): String? {
|
||||
@@ -83,7 +83,7 @@ private fun KtExpression.getBundleNameByContext(): String? {
|
||||
?.getBundleName()
|
||||
}
|
||||
|
||||
return resolvedCall.valueArguments.entrySet()
|
||||
return resolvedCall.valueArguments.entries
|
||||
.singleOrNull { it.value.arguments.any { it.getArgumentExpression() == expression } }
|
||||
?.key
|
||||
?.getBundleNameByAnnotation()
|
||||
|
||||
@@ -361,7 +361,7 @@ public open class KotlinChangeInfo(
|
||||
currentPsiMethods.singleOrNull()?.let { method -> return originalPsiMethods.keysToMap { method } }
|
||||
|
||||
val currentSignatures = initCurrentSignatures(currentPsiMethods)
|
||||
return originalSignatures.toMap({ it.method }) { originalSignature ->
|
||||
return originalSignatures.toMapBy({ it.method }) { originalSignature ->
|
||||
var constrainedCurrentSignatures = currentSignatures.map { it.constrainBy(originalSignature) }
|
||||
val maxMandatoryCount = constrainedCurrentSignatures.maxBy { it.mandatoryParams.size }!!.mandatoryParams.size
|
||||
constrainedCurrentSignatures = constrainedCurrentSignatures.filter { it.mandatoryParams.size == maxMandatoryCount }
|
||||
|
||||
@@ -40,7 +40,7 @@ import org.jetbrains.kotlin.psi.psiUtil.getParentOfType
|
||||
public class KotlinJUnitRunConfigurationProducer : RunConfigurationProducer<JUnitConfiguration>(JUnitConfigurationType.getInstance()) {
|
||||
override fun isConfigurationFromContext(configuration: JUnitConfiguration,
|
||||
context: ConfigurationContext): Boolean {
|
||||
if (RunConfigurationProducer.getInstance(javaClass<PatternConfigurationProducer>()).isMultipleElementsSelected(context)) {
|
||||
if (RunConfigurationProducer.getInstance(PatternConfigurationProducer::class.java).isMultipleElementsSelected(context)) {
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -134,7 +134,7 @@ public class KotlinJUnitRunConfigurationProducer : RunConfigurationProducer<JUni
|
||||
|
||||
private fun getTestMethodLocation(leaf: PsiElement): Location<PsiMethod>? {
|
||||
val function = leaf.getParentOfType<KtNamedFunction>(false) ?: return null
|
||||
val owner = PsiTreeUtil.getParentOfType(function, javaClass<KtFunction>(), javaClass<KtClass>())
|
||||
val owner = PsiTreeUtil.getParentOfType(function, KtFunction::class.java, KtClass::class.java)
|
||||
|
||||
if (owner is KtClass) {
|
||||
val delegate = LightClassUtil.getPsiClass(owner) ?: return null
|
||||
|
||||
@@ -113,9 +113,9 @@ public class KotlinRunConfigurationProducer : RunConfigurationProducer<JetRunCon
|
||||
|
||||
private fun PsiElement.declarationContainer(strict: Boolean): KtDeclarationContainer? {
|
||||
val element = if (strict)
|
||||
PsiTreeUtil.getParentOfType(this, javaClass<KtClassOrObject>(), javaClass<KtFile>())
|
||||
PsiTreeUtil.getParentOfType(this, KtClassOrObject::class.java, KtFile::class.java)
|
||||
else
|
||||
PsiTreeUtil.getNonStrictParentOfType(this, javaClass<KtClassOrObject>(), javaClass<KtFile>())
|
||||
PsiTreeUtil.getNonStrictParentOfType(this, KtClassOrObject::class.java, KtFile::class.java)
|
||||
return element as KtDeclarationContainer?
|
||||
}
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ public interface KotlinPsiRange {
|
||||
val range = element
|
||||
.siblings()
|
||||
.filter(SIGNIFICANT_FILTER)
|
||||
.take(elements.size())
|
||||
.take(elements.size)
|
||||
.toList()
|
||||
.toRange()
|
||||
|
||||
@@ -78,9 +78,9 @@ public interface KotlinPsiRange {
|
||||
matches.add(result)
|
||||
}
|
||||
else {
|
||||
val matchCountSoFar = matches.size()
|
||||
val matchCountSoFar = matches.size
|
||||
super.visitKtElement(element)
|
||||
if (result is UnificationResult.WeaklyMatched && matches.size() == matchCountSoFar) {
|
||||
if (result is UnificationResult.WeaklyMatched && matches.size == matchCountSoFar) {
|
||||
matches.add(result)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -190,8 +190,8 @@ public class KotlinPsiUnifier(
|
||||
fun checkArguments(): Status? {
|
||||
val args1 = rc1.getResultingDescriptor()?.getValueParameters()?.map { rc1.getValueArguments()[it] } ?: Collections.emptyList()
|
||||
val args2 = rc2.getResultingDescriptor()?.getValueParameters()?.map { rc2.getValueArguments()[it] } ?: Collections.emptyList()
|
||||
if (args1.size() != args2.size()) return UNMATCHED
|
||||
if (rc1.getCall().getValueArguments().size() != args1.size() || rc2.getCall().getValueArguments().size() != args2.size()) return null
|
||||
if (args1.size != args2.size) return UNMATCHED
|
||||
if (rc1.getCall().getValueArguments().size != args1.size || rc2.getCall().getValueArguments().size != args2.size) return null
|
||||
|
||||
return (args1.asSequence().zip(args2.asSequence())).fold(MATCHED) { s, p ->
|
||||
val (arg1, arg2) = p
|
||||
@@ -247,7 +247,7 @@ public class KotlinPsiUnifier(
|
||||
fun checkTypeArguments(): Status? {
|
||||
val typeArgs1 = rc1.getTypeArguments().toList()
|
||||
val typeArgs2 = rc2.getTypeArguments().toList()
|
||||
if (typeArgs1.size() != typeArgs2.size()) return UNMATCHED
|
||||
if (typeArgs1.size != typeArgs2.size) return UNMATCHED
|
||||
|
||||
for ((typeArg1, typeArg2) in (typeArgs1.zip(typeArgs2))) {
|
||||
if (!matchDescriptors(typeArg1.first, typeArg2.first)) return UNMATCHED
|
||||
@@ -338,7 +338,7 @@ public class KotlinPsiUnifier(
|
||||
|
||||
val args1 = type1.getArguments()
|
||||
val args2 = type2.getArguments()
|
||||
if (args1.size() != args2.size()) return UNMATCHED
|
||||
if (args1.size != args2.size) return UNMATCHED
|
||||
if (!args1.zip(args2).all {
|
||||
it.first.getProjectionKind() == it.second.getProjectionKind() && matchTypes(it.first.getType(), it.second.getType()) == MATCHED }
|
||||
) return UNMATCHED
|
||||
@@ -352,7 +352,7 @@ public class KotlinPsiUnifier(
|
||||
private fun matchTypes(types1: Collection<KotlinType>, types2: Collection<KotlinType>): Boolean {
|
||||
fun sortTypes(types: Collection<KotlinType>) = types.sortedBy { DescriptorRenderer.DEBUG_TEXT.renderType(it) }
|
||||
|
||||
if (types1.size() != types2.size()) return false
|
||||
if (types1.size != types2.size) return false
|
||||
return (sortTypes(types1).zip(sortTypes(types2))).all { matchTypes(it.first, it.second) == MATCHED }
|
||||
}
|
||||
|
||||
@@ -427,7 +427,7 @@ public class KotlinPsiUnifier(
|
||||
private fun matchDestructuringDeclarations(e1: KtDestructuringDeclaration, e2: KtDestructuringDeclaration): Boolean {
|
||||
val entries1 = e1.getEntries()
|
||||
val entries2 = e2.getEntries()
|
||||
if (entries1.size() != entries2.size()) return false
|
||||
if (entries1.size != entries2.size) return false
|
||||
|
||||
return entries1.zip(entries2).all { p ->
|
||||
val (entry1, entry2) = p
|
||||
@@ -487,7 +487,7 @@ public class KotlinPsiUnifier(
|
||||
val params2 = desc2.getValueParameters()
|
||||
val zippedParams = params1.zip(params2)
|
||||
val parametersMatch =
|
||||
(params1.size() == params2.size()) && zippedParams.all { matchTypes(it.first.getType(), it.second.getType()) == MATCHED }
|
||||
(params1.size == params2.size) && zippedParams.all { matchTypes(it.first.getType(), it.second.getType()) == MATCHED }
|
||||
if (!parametersMatch) return UNMATCHED
|
||||
|
||||
zippedParams.forEach { declarationPatternsToTargets.putValue(it.first, it.second) }
|
||||
@@ -527,7 +527,7 @@ public class KotlinPsiUnifier(
|
||||
matchPair: (Pair<T, T>) -> Boolean
|
||||
): Boolean {
|
||||
val zippedParams = declarations1.zip(declarations2)
|
||||
if (declarations1.size() != declarations2.size() || !zippedParams.all { matchPair(it) }) return false
|
||||
if (declarations1.size != declarations2.size || !zippedParams.all { matchPair(it) }) return false
|
||||
|
||||
zippedParams.forEach { declarationPatternsToTargets.putValue(it.first, it.second) }
|
||||
return true
|
||||
@@ -580,7 +580,7 @@ public class KotlinPsiUnifier(
|
||||
val delegationInfo1 = getDelegationOrderInfo(decl1)
|
||||
val delegationInfo2 = getDelegationOrderInfo(decl2)
|
||||
|
||||
if (delegationInfo1.orderInsensitive.size() != delegationInfo2.orderInsensitive.size()) return UNMATCHED
|
||||
if (delegationInfo1.orderInsensitive.size != delegationInfo2.orderInsensitive.size) return UNMATCHED
|
||||
outer@
|
||||
for (specifier1 in delegationInfo1.orderInsensitive) {
|
||||
for (specifier2 in delegationInfo2.orderInsensitive) {
|
||||
@@ -599,7 +599,7 @@ public class KotlinPsiUnifier(
|
||||
|
||||
val sortedMembers1 = resolveAndSortDeclarationsByDescriptor(membersInfo1.orderInsensitive)
|
||||
val sortedMembers2 = resolveAndSortDeclarationsByDescriptor(membersInfo2.orderInsensitive)
|
||||
if ((sortedMembers1.size() != sortedMembers2.size())) return UNMATCHED
|
||||
if ((sortedMembers1.size != sortedMembers2.size)) return UNMATCHED
|
||||
if (sortedMembers1.zip(sortedMembers2).any {
|
||||
val (d1, d2) = it
|
||||
(matchDeclarations(d1.first, d2.first, d1.second, d2.second) ?: doUnify(d1.first, d2.first)) == UNMATCHED
|
||||
@@ -774,7 +774,7 @@ public class KotlinPsiUnifier(
|
||||
|
||||
val targetElements = target.elements
|
||||
val patternElements = pattern.elements
|
||||
if (targetElements.size() != patternElements.size()) return UNMATCHED
|
||||
if (targetElements.size != patternElements.size) return UNMATCHED
|
||||
|
||||
return (targetElements.asSequence().zip(patternElements.asSequence())).fold(MATCHED) { s, p ->
|
||||
if (s != UNMATCHED) s and doUnify(p.first, p.second) else s
|
||||
@@ -898,7 +898,7 @@ public class KotlinPsiUnifier(
|
||||
return with(Context(target, pattern)) {
|
||||
val status = doUnify(target, pattern)
|
||||
when {
|
||||
substitution.size() != descriptorToParameter.size() ->
|
||||
substitution.size != descriptorToParameter.size ->
|
||||
Unmatched
|
||||
status == MATCHED -> {
|
||||
val targetRange = targetSubstringInfo?.createExpression()?.toRange() ?: target
|
||||
|
||||
@@ -45,7 +45,7 @@ abstract class KotlinAbiVersionIndexBase<T>(private val classOfIndex: Class<T>)
|
||||
|
||||
override fun save(output: DataOutput, value: BinaryVersion) {
|
||||
val array = value.toArray()
|
||||
DataInputOutputUtil.writeINT(output, array.size())
|
||||
DataInputOutputUtil.writeINT(output, array.size)
|
||||
for (number in array) {
|
||||
DataInputOutputUtil.writeINT(output, number)
|
||||
}
|
||||
@@ -61,7 +61,7 @@ abstract class KotlinAbiVersionIndexBase<T>(private val classOfIndex: Class<T>)
|
||||
body()
|
||||
}
|
||||
catch (e: Throwable) {
|
||||
LOG.warn("Could not index ABI version for file " + inputData.file + ": " + e.getMessage())
|
||||
LOG.warn("Could not index ABI version for file " + inputData.file + ": " + e.message)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ public abstract class AbstractDataFlowValueRenderingTest: KotlinLightCodeInsight
|
||||
val expression = element.getStrictParentOfType<KtExpression>()!!
|
||||
val info = expression.analyze().getDataFlowInfo(expression)
|
||||
|
||||
val allValues = (info.getCompleteTypeInfo().keySet() + info.getCompleteNullabilityInfo().keySet()).toSet()
|
||||
val allValues = (info.getCompleteTypeInfo().keySet() + info.getCompleteNullabilityInfo().keys).toSet()
|
||||
val actual = allValues.mapNotNull { renderDataFlowValue(it) }.sorted().joinToString("\n")
|
||||
|
||||
KotlinTestUtils.assertEqualsToFile(File(FileUtil.getNameWithoutExtension(fileName) + ".txt"), actual)
|
||||
|
||||
@@ -36,7 +36,7 @@ public abstract class AbstractAddImportTest : AbstractImportsTest() {
|
||||
var filter: (DeclarationDescriptor) -> Boolean = { true }
|
||||
if (descriptorName.startsWith("class:")) {
|
||||
filter = { it is ClassDescriptor }
|
||||
descriptorName = descriptorName.substring("class:".length()).trim()
|
||||
descriptorName = descriptorName.substring("class:".length).trim()
|
||||
}
|
||||
|
||||
val descriptors = file.resolveImportReference(FqName(descriptorName)).filter(filter)
|
||||
@@ -45,7 +45,7 @@ public abstract class AbstractAddImportTest : AbstractImportsTest() {
|
||||
descriptors.isEmpty() ->
|
||||
error("No descriptor $descriptorName found")
|
||||
|
||||
descriptors.size() > 1 ->
|
||||
descriptors.size > 1 ->
|
||||
error("Multiple descriptors found:\n " + descriptors.map { DescriptorRenderer.FQ_NAMES_IN_TYPES.render(it) }.joinToString("\n "))
|
||||
|
||||
else -> {
|
||||
|
||||
@@ -43,7 +43,7 @@ class LightClassesClasspathSortingTest : KotlinCodeInsightTestCase() {
|
||||
getModule().configureAs(getProjectDescriptor(dirName))
|
||||
|
||||
val testDirRoot = File(getTestDataPath())
|
||||
val filePaths = File(testDirRoot, dirName).listFiles().map { it.relativeTo(testDirRoot) }.toArrayList().toTypedArray()
|
||||
val filePaths = File(testDirRoot, dirName).listFiles().map { it.toRelativeString(testDirRoot) }.toTypedArray()
|
||||
configureByFiles(null, *filePaths)
|
||||
|
||||
checkLightClassBeforeDecompiled(fqName)
|
||||
|
||||
@@ -27,6 +27,6 @@ public class KotlinFindUsagesWithLibraryCustomTest : AbstractKotlinFindUsagesWit
|
||||
val indexOf = libraryFile.getText().indexOf("localClassProperty")
|
||||
val jetParameter = libraryFile.findElementAt(indexOf)!!.getStrictParentOfType<KtParameter>()!!
|
||||
val usages = findUsages(jetParameter.getOriginalElement(), null, false)
|
||||
assertEquals(2, usages.size())
|
||||
assertEquals(2, usages.size)
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ public class RegisteredFindersTest : KotlinLightCodeInsightFixtureTestCase() {
|
||||
val name = finder.javaClass.getSimpleName()
|
||||
val removed = expectedFindersNames.remove(name)
|
||||
Assert.assertTrue("Unknown finder found: $finder, class name: $name, search in $expectedFindersNames.\n" +
|
||||
"Consider updating ${javaClass<KotlinJavaPsiFacade>()}",
|
||||
"Consider updating ${KotlinJavaPsiFacade::class.java}",
|
||||
removed)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -71,13 +71,13 @@ public abstract class AbstractInspectionTest : KotlinLightCodeInsightFixtureTest
|
||||
setTestDataPath("${KotlinTestUtils.getHomeDirectory()}/$srcDir")
|
||||
|
||||
val afterFiles = srcDir.listFiles { it -> it.name == "inspectionData" }?.single()?.listFiles { it -> it.extension == "after" } ?: emptyArray()
|
||||
val psiFiles = srcDir.walkTopDown().treeFilter { it.name != "inspectionData" }.mapNotNull {
|
||||
val psiFiles = srcDir.walkTopDown().onEnter { it.name != "inspectionData" }.mapNotNull {
|
||||
file ->
|
||||
if (file.isDirectory) {
|
||||
null
|
||||
}
|
||||
else if (file.extension != "kt") {
|
||||
val filePath = file.relativeTo(srcDir).replace('\\', '/')
|
||||
val filePath = file.relativeToFile(srcDir).invariantSeparatorsPath
|
||||
configureByFile(filePath)
|
||||
}
|
||||
else {
|
||||
|
||||
@@ -122,7 +122,7 @@ public abstract class AbstractOverrideImplementTest : KotlinLightCodeInsightFixt
|
||||
|
||||
private fun doOverrideImplement(handler: OverrideImplementMembersHandler, memberToOverride: String?) {
|
||||
val elementAtCaret = myFixture.file.findElementAt(myFixture.editor.caretModel.offset)
|
||||
val classOrObject = PsiTreeUtil.getParentOfType(elementAtCaret, javaClass<KtClassOrObject>())
|
||||
val classOrObject = PsiTreeUtil.getParentOfType(elementAtCaret, KtClassOrObject::class.java)
|
||||
?: error("Caret should be inside class or object")
|
||||
|
||||
val chooserObjects = handler.collectMembersToGenerate(classOrObject)
|
||||
@@ -133,7 +133,7 @@ public abstract class AbstractOverrideImplementTest : KotlinLightCodeInsightFixt
|
||||
!KotlinBuiltIns.isAny(it)
|
||||
} ?: true
|
||||
}
|
||||
assertEquals(1, filtered.size(), "Invalid number of available chooserObjects for override")
|
||||
assertEquals(1, filtered.size, "Invalid number of available chooserObjects for override")
|
||||
filtered.single()
|
||||
}
|
||||
else {
|
||||
@@ -157,7 +157,7 @@ public abstract class AbstractOverrideImplementTest : KotlinLightCodeInsightFixt
|
||||
|
||||
private fun doMultiOverrideImplement(handler: OverrideImplementMembersHandler) {
|
||||
val elementAtCaret = myFixture.file.findElementAt(myFixture.editor.caretModel.offset)
|
||||
val classOrObject = PsiTreeUtil.getParentOfType(elementAtCaret, javaClass<KtClassOrObject>())
|
||||
val classOrObject = PsiTreeUtil.getParentOfType(elementAtCaret, KtClassOrObject::class.java)
|
||||
?: error("Caret should be inside class or object")
|
||||
|
||||
val chooserObjects = handler.collectMembersToGenerate(classOrObject).sortedBy { it.descriptor.name.asString() + " in " + it.immediateSuper.containingDeclaration.name.asString() }
|
||||
|
||||
+1
-1
@@ -86,7 +86,7 @@ abstract class AbstractCodeInsightActionTest : KotlinLightCodeInsightFixtureTest
|
||||
}
|
||||
}
|
||||
catch (e: CommonRefactoringUtil.RefactoringErrorHintException) {
|
||||
KotlinTestUtils.assertEqualsToFile(conflictFile, e.getMessage()!!)
|
||||
KotlinTestUtils.assertEqualsToFile(conflictFile, e.message!!)
|
||||
}
|
||||
finally {
|
||||
ConfigLibraryUtil.unconfigureLibrariesByDirective(myModule, fileText)
|
||||
|
||||
+1
-1
@@ -55,7 +55,7 @@ private fun createEmptyFile(dir: VirtualFile, relativePath: String) {
|
||||
var currentDir = dir
|
||||
val segments = relativePath.split('/')
|
||||
segments.forEachIndexed { i, s ->
|
||||
if (i < segments.size() - 1) {
|
||||
if (i < segments.size - 1) {
|
||||
currentDir = currentDir.createChildDirectory(null, s)
|
||||
} else {
|
||||
currentDir.createChildData(null, s)
|
||||
|
||||
+3
-3
@@ -126,9 +126,9 @@ private fun JavaCodeInsightTestFixture.configureByCodeFragment(filePath: String)
|
||||
val typeStr = InTextDirectivesUtils.findStringWithPrefixes(getFile().getText(), "// ${ExpectedCompletionUtils.RUNTIME_TYPE} ")
|
||||
if (typeStr != null) {
|
||||
file.putCopyableUserData(KtCodeFragment.RUNTIME_TYPE_EVALUATOR, {
|
||||
val codeFragment = KtPsiFactory(getProject()).createBlockCodeFragment("val xxx: $typeStr" , PsiTreeUtil.getParentOfType(elementAt, javaClass<KtElement>()))
|
||||
val codeFragment = KtPsiFactory(getProject()).createBlockCodeFragment("val xxx: $typeStr" , PsiTreeUtil.getParentOfType(elementAt, KtElement::class.java))
|
||||
val context = codeFragment.analyzeFully()
|
||||
val typeReference: KtTypeReference = PsiTreeUtil.getChildOfType(codeFragment.getContentElement().getFirstChild(), javaClass())!!
|
||||
val typeReference: KtTypeReference = PsiTreeUtil.getChildOfType(codeFragment.getContentElement().getFirstChild(), KtTypeReference::class.java)!!
|
||||
context[BindingContext.TYPE, typeReference]
|
||||
})
|
||||
}
|
||||
@@ -140,7 +140,7 @@ private fun createCodeFragment(filePath: String, contextElement: PsiElement): Kt
|
||||
val fileForFragment = File(filePath + ".fragment")
|
||||
val codeFragmentText = FileUtil.loadFile(fileForFragment, true).trim()
|
||||
val psiFactory = KtPsiFactory(contextElement.getProject())
|
||||
if (fileForFragment.readLines().size() == 1) {
|
||||
if (fileForFragment.readLines().size == 1) {
|
||||
return psiFactory.createExpressionCodeFragment(
|
||||
codeFragmentText,
|
||||
KotlinCodeFragmentFactory.getContextElement(contextElement)
|
||||
|
||||
+1
-1
@@ -78,7 +78,7 @@ public abstract class AbstractNavigateToLibrarySourceTest : KotlinCodeInsightTes
|
||||
|
||||
refs.forEach { referenceContainersToReferences.addReference(it) }
|
||||
}
|
||||
return referenceContainersToReferences.values()
|
||||
return referenceContainersToReferences.values
|
||||
}
|
||||
|
||||
private fun MutableMap<PsiElement, KtReference>.addReference(ref: KtReference) {
|
||||
|
||||
@@ -64,7 +64,7 @@ class FoldingAfterOptimizeImportsTest : AbstractKotlinFoldingTest() {
|
||||
fixture.doHighlighting()
|
||||
val model = getEditor().getFoldingModel()
|
||||
val foldingRegions = model.getAllFoldRegions()
|
||||
assert(foldingRegions.size() >= number) { "There is no enough folding regions in file: in file - ${foldingRegions.size()} , expected = ${number}" }
|
||||
assert(foldingRegions.size >= number) { "There is no enough folding regions in file: in file - ${foldingRegions.size} , expected = ${number}" }
|
||||
return foldingRegions[number]
|
||||
}
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ public abstract class AbstractUsageHighlightingTest: KotlinLightCodeInsightFixtu
|
||||
assert(caret != -1) { "Caret marker '$CARET_TAG' expected" }
|
||||
|
||||
WriteCommandAction.runWriteCommandAction(myFixture.getProject()) {
|
||||
document.deleteString(caret, caret + CARET_TAG.length())
|
||||
document.deleteString(caret, caret + CARET_TAG.length)
|
||||
}
|
||||
|
||||
getEditor().getCaretModel().moveToOffset(caret)
|
||||
@@ -52,8 +52,8 @@ public abstract class AbstractUsageHighlightingTest: KotlinLightCodeInsightFixtu
|
||||
var startOffset = highlighter.getStartOffset()
|
||||
var endOffset = highlighter.getEndOffset()
|
||||
|
||||
if (startOffset > caret) startOffset += CARET_TAG.length()
|
||||
if (endOffset > caret) endOffset += CARET_TAG.length()
|
||||
if (startOffset > caret) startOffset += CARET_TAG.length
|
||||
if (endOffset > caret) endOffset += CARET_TAG.length
|
||||
|
||||
HighlightInfo.newHighlightInfo(HighlightInfoType.INFORMATION).range(startOffset, endOffset).create()
|
||||
}
|
||||
|
||||
@@ -49,12 +49,12 @@ public class NoErrorsInStdlibTest : KotlinLightCodeInsightFixtureTestCase() {
|
||||
val errors = bindingContext.getDiagnostics().all().filter { it.getSeverity() == Severity.ERROR }
|
||||
|
||||
if (errors.isNotEmpty()) {
|
||||
System.err.println("${psiFile.getName()}: ${errors.size()} errors")
|
||||
System.err.println("${psiFile.getName()}: ${errors.size} errors")
|
||||
AnalyzerWithCompilerReport.reportDiagnostics(
|
||||
bindingContext.getDiagnostics(), PrintingMessageCollector.PLAIN_TEXT_TO_SYSTEM_ERR
|
||||
)
|
||||
|
||||
totalErrors += errors.size()
|
||||
totalErrors += errors.size
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ class KotlinCleanupInspectionTest(): KotlinLightCodeInsightFixtureTestCase() {
|
||||
override fun getProjectDescriptor(): LightProjectDescriptor = KotlinWithJdkAndRuntimeLightProjectDescriptor.INSTANCE
|
||||
|
||||
private fun doTest(result: String, vararg files: String) {
|
||||
myFixture.enableInspections(javaClass<KotlinCleanupInspection>())
|
||||
myFixture.enableInspections(KotlinCleanupInspection::class.java)
|
||||
myFixture.configureByFiles(*files)
|
||||
|
||||
val project = myFixture.getProject()
|
||||
|
||||
@@ -72,7 +72,7 @@ public abstract class AbstractMultiFileIntentionTest : KotlinMultiFileTestCase()
|
||||
assert(conflictFile == null) { "Conflict file $conflictFile should not exist" }
|
||||
}
|
||||
catch (e: CommonRefactoringUtil.RefactoringErrorHintException) {
|
||||
KotlinTestUtils.assertEqualsToFile(File(conflictFile!!.path), e.getMessage()!!)
|
||||
KotlinTestUtils.assertEqualsToFile(File(conflictFile!!.path), e.message!!)
|
||||
}
|
||||
finally {
|
||||
PsiDocumentManager.getInstance(getProject()!!).commitAllDocuments()
|
||||
|
||||
@@ -47,7 +47,7 @@ abstract class AbstractParameterInfoTest : LightCodeInsightFixtureTestCase() {
|
||||
|
||||
val lastChild = file.allChildren.filter { it !is PsiWhiteSpace }.last()
|
||||
val expectedResultText = when (lastChild.node.elementType) {
|
||||
KtTokens.BLOCK_COMMENT -> lastChild.text.substring(2, lastChild.text.length() - 2).trim()
|
||||
KtTokens.BLOCK_COMMENT -> lastChild.text.substring(2, lastChild.text.length - 2).trim()
|
||||
KtTokens.EOL_COMMENT -> lastChild.text.substring(2).trim()
|
||||
else -> error("Unexpected last file child")
|
||||
}
|
||||
|
||||
@@ -87,7 +87,7 @@ public abstract class AbstractMemberPullPushTest : KotlinLightCodeInsightFixture
|
||||
catch(e: Exception) {
|
||||
val message = when (e) {
|
||||
is BaseRefactoringProcessor.ConflictsInTestsException -> e.messages.sorted().joinToString("\n")
|
||||
is CommonRefactoringUtil.RefactoringErrorHintException -> e.getMessage()!!
|
||||
is CommonRefactoringUtil.RefactoringErrorHintException -> e.message!!
|
||||
else -> throw e
|
||||
}
|
||||
KotlinTestUtils.assertEqualsToFile(conflictFile, message)
|
||||
|
||||
+3
-3
@@ -251,7 +251,7 @@ public abstract class AbstractExtractionTest() : KotlinLightCodeInsightFixtureTe
|
||||
if (it.isNotEmpty()) {
|
||||
@Suppress("CAST_NEVER_SUCCEEDS")
|
||||
val args = it.map { it.toBoolean() }.toTypedArray() as Array<Any?>
|
||||
javaClass<ExtractionOptions>().getConstructors().first { it.getParameterTypes().size() == args.size() }.newInstance(*args) as ExtractionOptions
|
||||
ExtractionOptions::class.java.getConstructors().first { it.getParameterTypes().size == args.size }.newInstance(*args) as ExtractionOptions
|
||||
} else ExtractionOptions.DEFAULT
|
||||
}
|
||||
|
||||
@@ -281,10 +281,10 @@ public abstract class AbstractExtractionTest() : KotlinLightCodeInsightFixtureTe
|
||||
it.getParameterTypeCandidates(false).map { renderer.renderType(it) }.joinToString(", ", "[", "]")
|
||||
}.joinToString()
|
||||
|
||||
if (actualNames.size() != 1 || expectedNames.isNotEmpty()) {
|
||||
if (actualNames.size != 1 || expectedNames.isNotEmpty()) {
|
||||
assertEquals(expectedNames, actualNames, "Expected names mismatch.")
|
||||
}
|
||||
if (actualReturnTypes.size() != 1 || expectedReturnTypes.isNotEmpty()) {
|
||||
if (actualReturnTypes.size != 1 || expectedReturnTypes.isNotEmpty()) {
|
||||
assertEquals(expectedReturnTypes, actualReturnTypes, "Expected return types mismatch.")
|
||||
}
|
||||
assertEquals("Expected descriptors mismatch.", expectedDescriptors, actualDescriptors)
|
||||
|
||||
+1
-1
@@ -97,7 +97,7 @@ public class KotlinNameSuggesterTest : LightCodeInsightFixtureTestCase() {
|
||||
})
|
||||
}
|
||||
catch (e: KotlinRefactoringUtil.IntroduceRefactoringException) {
|
||||
throw AssertionError("Failed to find expression: " + e.getMessage())
|
||||
throw AssertionError("Failed to find expression: " + e.message)
|
||||
}
|
||||
finally {
|
||||
if (withRuntime) {
|
||||
|
||||
@@ -57,7 +57,7 @@ public abstract class AbstractPullUpTest : AbstractMemberPullPushTest() {
|
||||
protected fun doJavaTest(path: String) {
|
||||
doTest(path) { file ->
|
||||
val elementAt = getFile().findElementAt(getEditor().caretModel.offset)
|
||||
val sourceClass = PsiTreeUtil.getParentOfType(elementAt, javaClass<PsiClass>())!!
|
||||
val sourceClass = PsiTreeUtil.getParentOfType(elementAt, PsiClass::class.java)!!
|
||||
|
||||
val targetClassName = getTargetClassName(file)
|
||||
val superClasses = RefactoringHierarchyUtil.createBasesList(sourceClass, false, true)
|
||||
|
||||
@@ -129,7 +129,7 @@ public abstract class AbstractRenameTest : KotlinMultiFileTestCase() {
|
||||
catch (e : Exception) {
|
||||
if (e !is RefactoringErrorHintException && e !is ConflictsInTestsException) throw e
|
||||
|
||||
val hintExceptionUnquoted = StringUtil.unquoteString(e.getMessage()!!)
|
||||
val hintExceptionUnquoted = StringUtil.unquoteString(e.message!!)
|
||||
if (hintDirective != null) {
|
||||
Assert.assertEquals(hintDirective, hintExceptionUnquoted)
|
||||
}
|
||||
@@ -153,11 +153,11 @@ public abstract class AbstractRenameTest : KotlinMultiFileTestCase() {
|
||||
|
||||
val toRename = if (renameParamsObject["byRef"]?.getAsBoolean() ?: false) {
|
||||
val editor = createEditor(mainFile)
|
||||
editor.getCaretModel().moveToOffset(marker + MARKER_TEXT.length())
|
||||
editor.getCaretModel().moveToOffset(marker + MARKER_TEXT.length)
|
||||
TargetElementUtilBase.findTargetElement(editor, TargetElementUtilBase.getInstance().getAllAccepted())!!
|
||||
}
|
||||
else {
|
||||
psiFile.findElementAt(marker + MARKER_TEXT.length())!!.getNonStrictParentOfType<PsiNamedElement>()!!
|
||||
psiFile.findElementAt(marker + MARKER_TEXT.length)!!.getNonStrictParentOfType<PsiNamedElement>()!!
|
||||
}
|
||||
val substitution = RenamePsiElementProcessor.forElement(toRename).substituteElementToRename(toRename, null)
|
||||
|
||||
@@ -228,7 +228,7 @@ public abstract class AbstractRenameTest : KotlinMultiFileTestCase() {
|
||||
val fileFqn = jetFile.getPackageFqName()
|
||||
Assert.assertTrue("File '${mainFilePath}' should have package containing ${fqn}", fileFqn.isSubpackageOf(fqn))
|
||||
|
||||
val packageSegment = jetFile.getPackageDirective()!!.getPackageNames()[fqn.pathSegments().size() - 1]
|
||||
val packageSegment = jetFile.getPackageDirective()!!.getPackageNames()[fqn.pathSegments().size - 1]
|
||||
val segmentReference = packageSegment.mainReference
|
||||
|
||||
val psiElement = segmentReference.resolve()!!
|
||||
|
||||
@@ -72,7 +72,7 @@ public abstract class AbstractPartialBodyResolveTest : KotlinLightCodeInsightFix
|
||||
val editor = myFixture.getEditor()
|
||||
val selectionModel = editor.getSelectionModel()
|
||||
val expression = if (selectionModel.hasSelection()) {
|
||||
PsiTreeUtil.findElementOfClassAtRange(file, selectionModel.getSelectionStart(), selectionModel.getSelectionEnd(), javaClass<KtExpression>())
|
||||
PsiTreeUtil.findElementOfClassAtRange(file, selectionModel.getSelectionStart(), selectionModel.getSelectionEnd(), KtExpression::class.java)
|
||||
?: error("No JetExpression at selection range")
|
||||
}
|
||||
else {
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ public abstract class AbstractReferenceResolveInLibrarySourcesTest : KotlinLight
|
||||
val expectedResolveData = AbstractReferenceResolveTest.readResolveData(fixture.getFile()!!.getText(), 0)
|
||||
|
||||
val gotoData = NavigationTestUtils.invokeGotoImplementations(fixture.getEditor(), fixture.getFile())!!
|
||||
Assert.assertEquals("Single target expected for origianl file", 1, gotoData.targets.size())
|
||||
Assert.assertEquals("Single target expected for origianl file", 1, gotoData.targets.size)
|
||||
|
||||
val testedPsiElement = gotoData.targets[0].getNavigationElement()
|
||||
val testedElementFile = testedPsiElement.getContainingFile()!!
|
||||
|
||||
@@ -83,7 +83,7 @@ public abstract class AbstractReferenceResolveTest : KotlinLightPlatformCodeInsi
|
||||
|
||||
private fun forEachCaret(action: (index: Int, offset: Int) -> Unit) {
|
||||
val offsets = myFixture.getEditor().getCaretModel().getAllCarets().map { it.getOffset() }
|
||||
val singleCaret = offsets.size() == 1
|
||||
val singleCaret = offsets.size == 1
|
||||
for ((index, offset) in offsets.withIndex()) {
|
||||
action(if (singleCaret) -1 else index + 1, offset)
|
||||
}
|
||||
@@ -107,7 +107,7 @@ public abstract class AbstractReferenceResolveTest : KotlinLightPlatformCodeInsi
|
||||
referenceToString = "<empty>"
|
||||
}
|
||||
else {
|
||||
assertTrue(refs.size() == 1, "Must be a single ref: $refs.\nUse $MULTIRESOLVE if you need multiple refs\nUse $REF_EMPTY for an unresolved reference")
|
||||
assertTrue(refs.size == 1, "Must be a single ref: $refs.\nUse $MULTIRESOLVE if you need multiple refs\nUse $REF_EMPTY for an unresolved reference")
|
||||
referenceToString = refs.get(0)
|
||||
Assert.assertNotNull("Test data wasn't found, use \"// REF: \" directive", referenceToString)
|
||||
}
|
||||
|
||||
@@ -185,7 +185,7 @@ class RunConfigurationTest: KotlinCodeInsightTestCase() {
|
||||
val text = comment.getText() ?: return
|
||||
if (!text.startsWith(RUN_PREFIX)) return
|
||||
|
||||
val expectedClass = text.substring(RUN_PREFIX.length()).trim()
|
||||
val expectedClass = text.substring(RUN_PREFIX.length).trim()
|
||||
if (expectedClass.isNotEmpty()) expectedClasses.add(expectedClass)
|
||||
|
||||
val dataContext = MapDataContext()
|
||||
|
||||
+1
-1
@@ -59,7 +59,7 @@ public abstract class AbstractKotlinFileStructureTest : KotlinLightCodeInsightFi
|
||||
val fileText = FileUtil.loadFile(File(getTestDataPath(), fileName()), true)
|
||||
|
||||
val withInherited = InTextDirectivesUtils.isDirectiveDefined(fileText, "WITH_INHERITED")
|
||||
setTreeActionState(javaClass<KotlinInheritedMembersNodeProvider>(), withInherited)
|
||||
setTreeActionState(KotlinInheritedMembersNodeProvider::class.java, withInherited)
|
||||
}
|
||||
|
||||
public fun FileStructurePopup.update() {
|
||||
|
||||
@@ -59,7 +59,7 @@ public class DebugTextByStubTest : LightCodeInsightFixtureTestCase() {
|
||||
val (file, tree) = createFileAndStubTree(text)
|
||||
val function = tree.findChildStubByType(KtStubElementTypes.FUNCTION)
|
||||
val psi = KtNamedFunction(function as KotlinFunctionStub)
|
||||
Assert.assertEquals("STUB: " + file.findChildByClass(javaClass<KtNamedFunction>())!!.getText(), psi.getDebugText())
|
||||
Assert.assertEquals("STUB: " + file.findChildByClass(KtNamedFunction::class.java)!!.getText(), psi.getDebugText())
|
||||
}
|
||||
|
||||
fun typeReference(text: String) {
|
||||
@@ -69,7 +69,7 @@ public class DebugTextByStubTest : LightCodeInsightFixtureTestCase() {
|
||||
val valueParameter = parameterList.findChildStubByType(KtStubElementTypes.VALUE_PARAMETER)!!
|
||||
val typeReferenceStub = valueParameter.findChildStubByType(KtStubElementTypes.TYPE_REFERENCE)
|
||||
val psiFromStub = KtTypeReference(typeReferenceStub as KotlinPlaceHolderStub)
|
||||
val typeReferenceByPsi = file.findChildByClass(javaClass<KtNamedFunction>())!!.getValueParameters()[0].getTypeReference()
|
||||
val typeReferenceByPsi = file.findChildByClass(KtNamedFunction::class.java)!!.getValueParameters()[0].getTypeReference()
|
||||
Assert.assertEquals(typeReferenceByPsi!!.getText(), psiFromStub.getDebugText())
|
||||
}
|
||||
|
||||
@@ -77,7 +77,7 @@ public class DebugTextByStubTest : LightCodeInsightFixtureTestCase() {
|
||||
val (file, tree) = createFileAndStubTree(text)
|
||||
val clazz = tree.findChildStubByType(KtStubElementTypes.CLASS)!!
|
||||
val psiFromStub = KtClass(clazz as KotlinClassStub)
|
||||
val classByPsi = file.findChildByClass(javaClass<KtClass>())
|
||||
val classByPsi = file.findChildByClass(KtClass::class.java)
|
||||
val toCheckAgainst = "STUB: " + (expectedText ?: classByPsi!!.getText())
|
||||
Assert.assertEquals(toCheckAgainst, psiFromStub.getDebugText())
|
||||
if (expectedText != null) {
|
||||
@@ -89,7 +89,7 @@ public class DebugTextByStubTest : LightCodeInsightFixtureTestCase() {
|
||||
val (file, tree) = createFileAndStubTree(text)
|
||||
val obj = tree.findChildStubByType(KtStubElementTypes.OBJECT_DECLARATION)!!
|
||||
val psiFromStub = KtObjectDeclaration(obj as KotlinObjectStub)
|
||||
val objectByPsi = file.findChildByClass(javaClass<KtObjectDeclaration>())
|
||||
val objectByPsi = file.findChildByClass(KtObjectDeclaration::class.java)
|
||||
val toCheckAgainst = "STUB: " + (expectedText ?: objectByPsi!!.getText())
|
||||
Assert.assertEquals(toCheckAgainst, psiFromStub.getDebugText())
|
||||
}
|
||||
@@ -98,7 +98,7 @@ public class DebugTextByStubTest : LightCodeInsightFixtureTestCase() {
|
||||
val (file, tree) = createFileAndStubTree(text)
|
||||
val property = tree.findChildStubByType(KtStubElementTypes.PROPERTY)!!
|
||||
val psiFromStub = KtProperty(property as KotlinPropertyStub)
|
||||
val propertyByPsi = file.findChildByClass(javaClass<KtProperty>())
|
||||
val propertyByPsi = file.findChildByClass(KtProperty::class.java)
|
||||
val toCheckAgainst = "STUB: " + (expectedText ?: propertyByPsi!!.getText())
|
||||
Assert.assertEquals(toCheckAgainst, psiFromStub.getDebugText())
|
||||
}
|
||||
|
||||
@@ -133,13 +133,13 @@ public class StringInjectionHostTest: KotlinLiteFixture() {
|
||||
val chars = StringBuilder(prefix)
|
||||
val range = rangeInHost ?: escaper.getRelevantTextRange()
|
||||
assertTrue(escaper.decode(range, chars))
|
||||
assertEquals(decoded, chars.substring(prefix.length()))
|
||||
assertEquals(decoded, chars.substring(prefix.length))
|
||||
val extendedOffsets = HashMap(targetToSourceOffsets)
|
||||
val beforeStart = targetToSourceOffsets.keySet().min()!! - 1
|
||||
val beforeStart = targetToSourceOffsets.keys.min()!! - 1
|
||||
if (beforeStart >= 0) {
|
||||
extendedOffsets[beforeStart] = -1
|
||||
}
|
||||
extendedOffsets[targetToSourceOffsets.keySet().max()!! + 1] = -1
|
||||
extendedOffsets[targetToSourceOffsets.keys.max()!! + 1] = -1
|
||||
for ((target, source) in extendedOffsets) {
|
||||
assertEquals("Wrong source offset for $target", source, escaper.getOffsetInHost(target, range))
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ public class KotlinReferencesSearchTest(): AbstractSearcherTest() {
|
||||
|
||||
public fun testPlus() {
|
||||
val refs = doTest<KtFunction>()
|
||||
Assert.assertEquals(3, refs.size())
|
||||
Assert.assertEquals(3, refs.size)
|
||||
Assert.assertEquals("+", refs[0].getCanonicalText())
|
||||
Assert.assertEquals("plus", refs[1].getCanonicalText())
|
||||
Assert.assertEquals("plus", refs[2].getCanonicalText())
|
||||
@@ -43,7 +43,7 @@ public class KotlinReferencesSearchTest(): AbstractSearcherTest() {
|
||||
|
||||
public fun testParam() {
|
||||
val refs = doTest<KtParameter>()
|
||||
Assert.assertEquals(3, refs.size())
|
||||
Assert.assertEquals(3, refs.size)
|
||||
Assert.assertEquals("n", refs[0].getCanonicalText())
|
||||
Assert.assertEquals("component1", refs[1].getCanonicalText())
|
||||
Assert.assertTrue(refs[2] is KtDestructuringDeclarationReference)
|
||||
|
||||
Reference in New Issue
Block a user