fix some tests for as36
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
class A {
|
||||
fun someOther() = false
|
||||
|
||||
private fun formatElement(element: PsiElement): String {
|
||||
var element = element
|
||||
element = JetPsiUtil.ascendIfPropertyAccessor(element)
|
||||
if (element is JetNamedFunction || element is JetProperty) {
|
||||
val bindingContext =
|
||||
AnalyzerFacadeWithCache.analyzeFileWithCache(element.getContainingJetFile())
|
||||
.getBindingContext()
|
||||
|
||||
val declarationDescriptor =
|
||||
bindingContext.get(BindingContext.DECLARATION_TO_DESCRIPTOR, element)
|
||||
if (declarationDescriptor is CallableMemberDescriptor) {
|
||||
val containingDescriptor = declarationDescriptor.getContainingDeclaration()
|
||||
if (containingDescriptor is ClassDescriptor) {
|
||||
return JetBundle.message(
|
||||
"override.declaration.x.in.y",
|
||||
DescriptorRenderer.COMPACT.render(declarationDescriptor),
|
||||
IdeDescriptorRenderers.SOURCE_CODE_SHORT_NAMES_NO_ANNOTATIONS.render(
|
||||
containingDescriptor
|
||||
)
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
assert(element is PsiMethod) { "Method accepts only kotlin functions/properties and java methods, but '" + element.getText() + "' was found" }
|
||||
return JetRefactoringUtil.formatPsiMethod(element as PsiMethod, true, false)
|
||||
}
|
||||
|
||||
protected fun getDimensionServiceKey(): String {
|
||||
return "#org.jetbrains.kotlin.idea.refactoring.safeDelete.KotlinOverridingDialog"
|
||||
}
|
||||
|
||||
fun getSelected(): ArrayList<UsageInfo> {
|
||||
val result = ArrayList<UsageInfo>()
|
||||
for (i in 0 until myChecked.length) {
|
||||
if (myChecked[i]) {
|
||||
result.add(myOverridingMethods.get(i))
|
||||
}
|
||||
}
|
||||
return result
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
import test.ToBeImportedJava.staticMethod
|
||||
import test.ToBeImportedJava.TO_BE_IMPORTED_CONST
|
||||
import test.ToBeImportedJava
|
||||
import test.ToBeImportedKotlin
|
||||
import java.util.HashMap
|
||||
import java.util.ArrayList
|
||||
|
||||
class Target {
|
||||
var listOfPlatformType: List<String> = ArrayList()
|
||||
|
||||
var unresolved: UnresolvedInterface<UnresolvedGeneric> =
|
||||
UnresolvedImplementation() // Should not add import
|
||||
|
||||
var hashMapOfNotImported: Map<ToBeImportedJava, ToBeImportedKotlin> = HashMap()
|
||||
|
||||
fun acceptKotlinClass(tbi: ToBeImportedKotlin) {
|
||||
|
||||
}
|
||||
|
||||
fun acceptJavaClass(tbi: ToBeImportedJava) {
|
||||
|
||||
}
|
||||
|
||||
var ambiguousKotlin: IAmbiguousKotlin =
|
||||
AmbiguousKotlin() // Should not add import in case of 2 declarations in Kotlin
|
||||
var ambiguous: IAmbiguous =
|
||||
Ambiguous() // Should not add import in case of ambiguous declarations in Kotlin and in Java
|
||||
var ambiguousJava: IAmbiguousJava =
|
||||
AmbiguousJava() // Should not add import in case of 2 declarations in Java
|
||||
|
||||
fun workWithStatics() {
|
||||
val a = TO_BE_IMPORTED_CONST
|
||||
staticMethod()
|
||||
}
|
||||
}
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
fun test(list: List<Int>) {
|
||||
val mapIndexedTo: MutableList<Int> = list.asSequence().filter { it > 1 }
|
||||
.mapIndexedTo(mutableListOf()) { index, i -> i }
|
||||
}
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// WITH_RUNTIME
|
||||
|
||||
fun test() {
|
||||
val pair: Pair<List<Int>, List<Int>> = listOf(1 to 2, 3 to 4).asSequence().filter { it.first > 1 }
|
||||
.filter { it.second > 2 }.unzip()
|
||||
}
|
||||
Vendored
+9
@@ -0,0 +1,9 @@
|
||||
class DefaultValueChain(
|
||||
val x1: Int,
|
||||
x2: Int = x1,
|
||||
val x3: Int = x2,
|
||||
x4: Int = x3,
|
||||
val x5: Int = x4
|
||||
) {
|
||||
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
// WITH_RUNTIME
|
||||
// INTENTION_TEXT: "Replace with 'firstOrNull{}'"
|
||||
// IS_APPLICABLE_2: false
|
||||
|
||||
fun getFirstValue() = "value"
|
||||
|
||||
fun foo(list: List<String?>): String? {
|
||||
val value = getFirstValue()
|
||||
val found: String? =
|
||||
list.firstOrNull { it != null && !it.startsWith("IMG:") && it.contains(value) }
|
||||
return found
|
||||
}
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
annotation class Ann1(val i: Int, val j: Int)
|
||||
|
||||
@Target(AnnotationTarget.PROPERTY)
|
||||
annotation class Ann2(val i: Int, val j: Int)
|
||||
|
||||
@Target(AnnotationTarget.FIELD)
|
||||
annotation class Ann3(val i: Int, val j: Int)
|
||||
|
||||
@Target(AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.FIELD, AnnotationTarget.PROPERTY)
|
||||
annotation class Ann4(val i: Int, val j: Int)
|
||||
|
||||
@Target(AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.FIELD)
|
||||
annotation class Ann5(val i: Int, val j: Int)
|
||||
|
||||
class Test(
|
||||
@get:Ann1(0, 0) @property:Ann1(1, 11) @Ann2(2, 22) @Ann3(3, 33) @property:Ann4(
|
||||
4,
|
||||
44
|
||||
) @field:Ann5(5, 55) val foo: String = ""
|
||||
) {
|
||||
}
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
annotation class Annotation1(val a: Int = 0)
|
||||
annotation class Annotation2(val a: Int = 0)
|
||||
annotation class Annotation3(val a: Int = 0)
|
||||
|
||||
|
||||
class TestClass(
|
||||
private @property:Annotation1(42) @field:Annotation2(42) @Annotation1(42) @Annotation3(
|
||||
42
|
||||
) val text: String = "LoremIpsum"
|
||||
) {
|
||||
}
|
||||
+5
@@ -0,0 +1,5 @@
|
||||
// Ann: to be implemented
|
||||
actual annotation class <caret>Ann actual constructor(
|
||||
actual val x: Int,
|
||||
actual val y: String
|
||||
)
|
||||
Vendored
+10
@@ -0,0 +1,10 @@
|
||||
// "Mark as @Deprecated(..., level = DeprecationLevel.HIDDEN)" "true"
|
||||
import java.io.File
|
||||
|
||||
@Deprecated(
|
||||
"Is replaced with automatic synthetic extension",
|
||||
ReplaceWith("name"),
|
||||
level = DeprecationLevel.HIDDEN
|
||||
)
|
||||
val File.<caret>name: String
|
||||
get() = getName()
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
// WITH_RUNTIME
|
||||
// SUGGESTED_NAMES: triple, getT
|
||||
// PARAM_TYPES: kotlin.Int
|
||||
// PARAM_TYPES: kotlin.Int
|
||||
// PARAM_TYPES: kotlin.Int
|
||||
// PARAM_DESCRIPTOR: value-parameter a: kotlin.Int defined in foo
|
||||
// PARAM_DESCRIPTOR: var b: kotlin.Int defined in foo
|
||||
// PARAM_DESCRIPTOR: var c: kotlin.Int defined in foo
|
||||
// SIBLING:
|
||||
fun foo(a: Int): Int {
|
||||
var b: Int = 1
|
||||
var c: Int = 2
|
||||
|
||||
val triple = triple(a, b, c)
|
||||
b = triple.second
|
||||
c = triple.third
|
||||
val t = triple.first
|
||||
println(b + c)
|
||||
|
||||
return t
|
||||
}
|
||||
|
||||
private fun triple(
|
||||
a: Int,
|
||||
b: Int,
|
||||
c: Int
|
||||
): Triple<Int, Int, Int> {
|
||||
var b1 = b
|
||||
var c1 = c
|
||||
val i = if (a > 0) {
|
||||
b1 += a
|
||||
c1 -= b1
|
||||
b1
|
||||
} else {
|
||||
a
|
||||
}
|
||||
return Triple(i, b1, c1)
|
||||
}
|
||||
@@ -0,0 +1,4 @@
|
||||
// WITH_RUNTIME
|
||||
fun foo(list: List<String>, function: (String) -> Boolean = { it.length > 6 }) = list.filter(
|
||||
function
|
||||
)
|
||||
@@ -0,0 +1,18 @@
|
||||
internal annotation class Anon(
|
||||
val stringArray: Array<String>, val intArray: IntArray, // string
|
||||
val string: String
|
||||
)
|
||||
|
||||
@Anon(string = "a", stringArray = ["a", "b"], intArray = [1, 2])
|
||||
@Target(AnnotationTarget.CONSTRUCTOR, AnnotationTarget.FIELD)
|
||||
internal annotation class I
|
||||
|
||||
@Target(
|
||||
AnnotationTarget.FUNCTION,
|
||||
AnnotationTarget.PROPERTY_GETTER,
|
||||
AnnotationTarget.PROPERTY_SETTER
|
||||
)
|
||||
internal annotation class J
|
||||
|
||||
@Target
|
||||
internal annotation class K
|
||||
@@ -0,0 +1,8 @@
|
||||
internal annotation class Anon(
|
||||
val s: String = "a",
|
||||
val stringArray: Array<String> = ["a", "b"],
|
||||
val intArray: IntArray
|
||||
)
|
||||
|
||||
@Anon(intArray = [1, 2])
|
||||
internal class A
|
||||
@@ -0,0 +1,6 @@
|
||||
val constrArgTypes = arrayOf<Class<*>>(
|
||||
Array<String>::class.java,
|
||||
String::class.java,
|
||||
Int::class.java,
|
||||
Double::class.java
|
||||
)
|
||||
@@ -0,0 +1,12 @@
|
||||
package pack
|
||||
|
||||
internal class C @JvmOverloads constructor(
|
||||
a: Int = 0,
|
||||
b: Int = 0,
|
||||
c: Int = 0,
|
||||
d: Int = 0,
|
||||
e: Int = 0
|
||||
) {
|
||||
|
||||
constructor(a: Int) : this(a, 0, 0, 0, 1) {}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package pack
|
||||
|
||||
internal class C @JvmOverloads constructor(
|
||||
a: Int = 0,
|
||||
b: Int = 0,
|
||||
c: Int = 0,
|
||||
d: Int = 0,
|
||||
e: Int = 0
|
||||
) {
|
||||
|
||||
constructor(a1: Int, b1: Int, c1: Int) : this(a1, b1, c1, 0, 0) {}
|
||||
|
||||
constructor(b: Byte) : this(b.toInt(), 0, 0, 0, 0) {}
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package pack
|
||||
|
||||
internal class C @JvmOverloads constructor(
|
||||
a: Int = 0,
|
||||
b: Int = 0,
|
||||
c: Int = 0,
|
||||
d: Int = 0,
|
||||
e: Int = 0
|
||||
) {
|
||||
|
||||
constructor(a: Int, b: Int, c: Int) : this(b, a, c, 0, 0) {}
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
package pack
|
||||
|
||||
internal class C @JvmOverloads constructor(
|
||||
a: Int = 1,
|
||||
b: Int = 2,
|
||||
c: Int = 3,
|
||||
d: Int = 4,
|
||||
e: Int = 5
|
||||
)
|
||||
@@ -0,0 +1,9 @@
|
||||
package pack
|
||||
|
||||
internal class C @JvmOverloads constructor(
|
||||
a: Int = 1,
|
||||
b: Int = 2,
|
||||
c: Int = 3,
|
||||
d: Int = 4,
|
||||
e: Int = 5
|
||||
)
|
||||
@@ -0,0 +1,6 @@
|
||||
class AppInfo(
|
||||
internal var mName: String,
|
||||
internal var mIcon: String,
|
||||
internal var mLastUpdateTime: Long
|
||||
)
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
import java.util.*
|
||||
|
||||
internal class Iterator {
|
||||
|
||||
var mutableMap1: MutableMap<String, String> = HashMap()
|
||||
var mutableMap2: MutableMap<String, String> = HashMap()
|
||||
|
||||
fun testFields() {
|
||||
mutableMap1.values.add("")
|
||||
mutableMap2.entries.iterator().remove()
|
||||
}
|
||||
|
||||
fun testFunctionParameters(
|
||||
immutableCollection: Collection<String>,
|
||||
mutableList: MutableList<Int>
|
||||
) {
|
||||
val it = immutableCollection.iterator()
|
||||
while (it.hasNext()) {
|
||||
it.next()
|
||||
}
|
||||
mutableList.listIterator().add(2)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user