Fix tests: codegen, completion, decompiler consistency, quickdoc, intentions, navigation, reference resolver, quick fixes

This commit is contained in:
Ilya Gorbunov
2015-12-07 05:01:10 +03:00
parent f55b421853
commit 59a9e2549c
25 changed files with 58 additions and 61 deletions
@@ -1,4 +1,4 @@
import kotlin.support.AbstractIterator
import kotlin.collections.AbstractIterator
class MyIterator : AbstractIterator<String>() {
var i = 0
@@ -1,5 +1,3 @@
import kotlin.support.*
interface Stream<T> {
fun iterator(): Iterator<T>
}
@@ -3,8 +3,8 @@ fun foo(iterable: Iterable<String>) {
}
// WITH_ORDER
// EXIST: { itemText: "single", tailText: "() for Iterable<T> in kotlin" }
// EXIST: { itemText: "single", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin" }
// EXIST: { itemText: "singleOrNull", tailText: "() for Iterable<T> in kotlin" }
// EXIST: { itemText: "singleOrNull", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin" }
// EXIST: { itemText: "single", tailText: "() for Iterable<T> in kotlin.collections" }
// EXIST: { itemText: "single", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin.collections" }
// EXIST: { itemText: "singleOrNull", tailText: "() for Iterable<T> in kotlin.collections" }
// EXIST: { itemText: "singleOrNull", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin.collections" }
// NOTHING_ELSE
@@ -2,6 +2,6 @@ fun test(p1: (String) -> Boolean, p2: (Int) -> Boolean) {
listOf("a", "b").filt<caret>
}
// EXIST: { itemText: "filter", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin", typeText:"List<String>" }
// EXIST: { itemText: "filter", tailText: "(p1) for Iterable<T> in kotlin", typeText: "List<String>" }
// ABSENT: { itemText: "filter", tailText: "(p2) for Iterable<T> in kotlin", typeText: "List<String>" }
// EXIST: { itemText: "filter", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin.collections", typeText:"List<String>" }
// EXIST: { itemText: "filter", tailText: "(p1) for Iterable<T> in kotlin.collections", typeText: "List<String>" }
// ABSENT: { itemText: "filter", tailText: "(p2) for Iterable<T> in kotlin.collections", typeText: "List<String>" }
@@ -2,7 +2,7 @@ fun test(p1: (String) -> Int, p2: (Int) -> Int, p3: (String) -> Char) {
listOf("a", "b").map<caret>
}
// EXIST: { itemText: "map", tailText: " {...} (transform: (String) -> R) for Iterable<T> in kotlin", typeText:"List<R>" }
// EXIST: { itemText: "map", tailText: "(p1) for Iterable<T> in kotlin", typeText: "List<Int>" }
// ABSENT: { itemText: "map", tailText: "(p2) for Iterable<T> in kotlin", typeText: "List<Int>" }
// EXIST: { itemText: "map", tailText: "(p3) for Iterable<T> in kotlin", typeText: "List<Char>" }
// EXIST: { itemText: "map", tailText: " {...} (transform: (String) -> R) for Iterable<T> in kotlin.collections", typeText:"List<R>" }
// EXIST: { itemText: "map", tailText: "(p1) for Iterable<T> in kotlin.collections", typeText: "List<Int>" }
// ABSENT: { itemText: "map", tailText: "(p2) for Iterable<T> in kotlin.collections", typeText: "List<Int>" }
// EXIST: { itemText: "map", tailText: "(p3) for Iterable<T> in kotlin.collections", typeText: "List<Char>" }
@@ -1,5 +1,5 @@
fun foo(list: List<String>) {
list.<caret>
}
// EXIST: { itemText: "firstOrNull", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin", typeText: "String?" }
// EXIST: { itemText: "toMapBy", tailText: " {...} (selector: (String) -> K) for Iterable<T> in kotlin", typeText: "Map<K, String>" }
// EXIST: { itemText: "firstOrNull", tailText: " {...} (predicate: (String) -> Boolean) for Iterable<T> in kotlin.collections", typeText: "String?" }
// EXIST: { itemText: "toMapBy", tailText: " {...} (selector: (String) -> K) for Iterable<T> in kotlin.collections", typeText: "Map<K, String>" }
@@ -8,5 +8,5 @@ fun firstFun() {
}
// INVOCATION_COUNT: 1
// EXIST: { lookupString:"toLinkedMap", itemText:"toLinkedMap", tailText:"() for Map<K, V> in kotlin" }
// EXIST: { lookupString:"toLinkedMap", itemText:"toLinkedMap", tailText:"() for Map<K, V> in kotlin.collections" }
// NOTHING_ELSE
+1 -1
View File
@@ -12,5 +12,5 @@ fun f3(): Iterable<Char>{}
// EXIST: f1
// ABSENT: f2
// EXIST: f3
// EXIST: { lookupString:"listOf", itemText: "listOf", tailText: "(vararg elements: T) (kotlin)", typeText:"List<T>" }
// EXIST: { lookupString:"listOf", itemText: "listOf", tailText: "(vararg elements: T) (kotlin.collections)", typeText:"List<T>" }
@@ -10,4 +10,4 @@ fun foo(p1: Collection<X>, p2: Collection<Y>, p3: Collection<Z>, p4: Collection<
// EXIST: p2
// ABSENT: p3
// ABSENT: p4
// EXIST: { lookupString:"listOf", itemText: "listOf", tailText: "(vararg elements: T) (kotlin)", typeText:"List<T>" }
// EXIST: { lookupString:"listOf", itemText: "listOf", tailText: "(vararg elements: T) (kotlin.collections)", typeText:"List<T>" }
@@ -4,6 +4,6 @@ fun f(){
foo(<caret>)
}
// EXIST: { lookupString: "listOf", tailText: "() (kotlin)", typeText: "List<String>" }
// EXIST: { lookupString: "listOf", tailText: "(vararg elements: String) (kotlin)", typeText: "List<String>" }
// EXIST: { lookupString: "arrayListOf", tailText: "(vararg elements: String) (kotlin)", typeText: "ArrayList<String>" }
// EXIST: { lookupString: "listOf", tailText: "() (kotlin.collections)", typeText: "List<String>" }
// EXIST: { lookupString: "listOf", tailText: "(vararg elements: String) (kotlin.collections)", typeText: "List<String>" }
// EXIST: { lookupString: "arrayListOf", tailText: "(vararg elements: String) (kotlin.collections)", typeText: "ArrayList<String>" }
@@ -2,5 +2,5 @@ fun foo(list: List<String>): Collection<Int> {
return list.<caret>
}
// EXIST: { lookupString: "map", tailText: " {...} (transform: (String) -> Int) for Iterable<T> in kotlin", typeText: "List<Int>" }
// EXIST: { lookupString: "map", tailText: " {...} (transform: (String) -> Int) for Iterable<T> in kotlin.collections", typeText: "List<Int>" }
// ABSENT: filter
@@ -2,4 +2,4 @@ fun foo(s: String) {
if (s in <caret>)
}
// EXIST: { lookupString:"listOf", itemText: "listOf", tailText: "(vararg elements: T) (kotlin)", typeText:"List<T>" }
// EXIST: { lookupString:"listOf", itemText: "listOf", tailText: "(vararg elements: T) (kotlin.collections)", typeText:"List<T>" }
+1 -1
View File
@@ -2,4 +2,4 @@ fun test() {
listOf(1, 2, 4).<caret>filter { it > 0 }
}
//INFO: <b>public</b> inline <b>fun</b> &lt;T&gt; Iterable&lt;T&gt;.filter(predicate: (T) &rarr; Boolean): List&lt;T&gt; <i>defined in</i> kotlin<p>Returns a list containing only elements matching the given <a href="psi_element://predicate">predicate</a>.</p>
//INFO: <b>public</b> inline <b>fun</b> &lt;T&gt; Iterable&lt;T&gt;.filter(predicate: (T) &rarr; Boolean): List&lt;T&gt; <i>defined in</i> kotlin.collections<p>Returns a list containing only elements matching the given <a href="psi_element://predicate">predicate</a>.</p>
@@ -1,4 +1,4 @@
fun foo(c: kotlin.support.AbstractIterator<kotlin.properties.ObservableProperty<Int>>) {
fun foo(c: kotlin.collections.AbstractIterator<kotlin.properties.ObservableProperty<Int>>) {
ba<caret>r(c)
}
@@ -1,7 +1,6 @@
import kotlin.properties.ObservableProperty
import kotlin.support.AbstractIterator
fun foo(c: kotlin.support.AbstractIterator<kotlin.properties.ObservableProperty<Int>>) {
fun foo(c: kotlin.collections.AbstractIterator<kotlin.properties.ObservableProperty<Int>>) {
bar<AbstractIterator<ObservableProperty<Int>>>(c)
}
@@ -1,5 +1,5 @@
fun main() {
val randomFunction: (x: kotlin.support.AbstractIterator<Int>, y: kotlin.String) -> kotlin.String = { <caret>x, str -> str}
val randomFunction: (x: kotlin.properties.ObservableProperty<Int>, y: kotlin.String) -> kotlin.String = { <caret>x, str -> str}
}
// WITH_RUNTIME
@@ -1,7 +1,7 @@
import kotlin.support.AbstractIterator
import kotlin.properties.ObservableProperty
fun main() {
val randomFunction: (x: kotlin.support.AbstractIterator<Int>, y: kotlin.String) -> kotlin.String = { x: AbstractIterator<Int>, str: String -> str}
val randomFunction: (x: kotlin.properties.ObservableProperty<Int>, y: kotlin.String) -> kotlin.String = { x: ObservableProperty<Int>, str: String -> str}
}
// WITH_RUNTIME
+1 -1
View File
@@ -1,4 +1,4 @@
// RUNTIME_WITH_SOURCES
// CHECK_BOX
// SEARCH_TEXT: arrayListOf
// REF: (kotlin).arrayListOf(T)
// REF: (kotlin.collections).arrayListOf(T)
@@ -1,4 +1,4 @@
// RUNTIME
// CHECK_BOX
// SEARCH_TEXT: arrayListOf
// REF: (kotlin).arrayListOf(T)
// REF: (kotlin.collections).arrayListOf(T)
+22 -22
View File
@@ -1,25 +1,25 @@
// RUNTIME_WITH_SOURCES
// CHECK_BOX
// SEARCH_TEXT: joinToString
// REF: (for Array<out T> in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((T) -> CharSequence)?)
// REF: (for Array<out T> in kotlin).joinToString(String, String, String, Int, String, ((T) -> String)?)
// REF: (for BooleanArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Boolean) -> CharSequence)?)
// REF: (for BooleanArray in kotlin).joinToString(String, String, String, Int, String, ((Boolean) -> String)?)
// REF: (for ByteArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Byte) -> CharSequence)?)
// REF: (for ByteArray in kotlin).joinToString(String, String, String, Int, String, ((Byte) -> String)?)
// REF: (for CharArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Char) -> CharSequence)?)
// REF: (for CharArray in kotlin).joinToString(String, String, String, Int, String, ((Char) -> String)?)
// REF: (for DoubleArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Double) -> CharSequence)?)
// REF: (for DoubleArray in kotlin).joinToString(String, String, String, Int, String, ((Double) -> String)?)
// REF: (for FloatArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Float) -> CharSequence)?)
// REF: (for FloatArray in kotlin).joinToString(String, String, String, Int, String, ((Float) -> String)?)
// REF: (for IntArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Int) -> CharSequence)?)
// REF: (for IntArray in kotlin).joinToString(String, String, String, Int, String, ((Int) -> String)?)
// REF: (for Iterable<T> in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((T) -> CharSequence)?)
// REF: (for Iterable<T> in kotlin).joinToString(String, String, String, Int, String, ((T) -> String)?)
// REF: (for LongArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Long) -> CharSequence)?)
// REF: (for LongArray in kotlin).joinToString(String, String, String, Int, String, ((Long) -> String)?)
// REF: (for Sequence<T> in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((T) -> CharSequence)?)
// REF: (for Sequence<T> in kotlin).joinToString(String, String, String, Int, String, ((T) -> String)?)
// REF: (for ShortArray in kotlin).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Short) -> CharSequence)?)
// REF: (for ShortArray in kotlin).joinToString(String, String, String, Int, String, ((Short) -> String)?)
// REF: (for Array<out T> in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((T) -> CharSequence)?)
// REF: (for Array<out T> in kotlin.collections).joinToString(String, String, String, Int, String, ((T) -> String)?)
// REF: (for BooleanArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Boolean) -> CharSequence)?)
// REF: (for BooleanArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Boolean) -> String)?)
// REF: (for ByteArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Byte) -> CharSequence)?)
// REF: (for ByteArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Byte) -> String)?)
// REF: (for CharArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Char) -> CharSequence)?)
// REF: (for CharArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Char) -> String)?)
// REF: (for DoubleArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Double) -> CharSequence)?)
// REF: (for DoubleArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Double) -> String)?)
// REF: (for FloatArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Float) -> CharSequence)?)
// REF: (for FloatArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Float) -> String)?)
// REF: (for IntArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Int) -> CharSequence)?)
// REF: (for IntArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Int) -> String)?)
// REF: (for Iterable<T> in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((T) -> CharSequence)?)
// REF: (for Iterable<T> in kotlin.collections).joinToString(String, String, String, Int, String, ((T) -> String)?)
// REF: (for LongArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Long) -> CharSequence)?)
// REF: (for LongArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Long) -> String)?)
// REF: (for Sequence<T> in kotlin.sequences).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((T) -> CharSequence)?)
// REF: (for Sequence<T> in kotlin.sequences).joinToString(String, String, String, Int, String, ((T) -> String)?)
// REF: (for ShortArray in kotlin.collections).joinToString(CharSequence, CharSequence, CharSequence, Int, CharSequence, ((Short) -> CharSequence)?)
// REF: (for ShortArray in kotlin.collections).joinToString(String, String, String, Int, String, ((Short) -> String)?)
@@ -1,7 +1,7 @@
// "Import" "true"
package some
import kotlin.util.measureTimeNano
import kotlin.system.measureTimeNano
fun testFun() {
measureTimeNano({})
@@ -3,6 +3,6 @@ fun main(it: Iterator<Any>) {
}
// MULTIRESOLVE
// REF: (for kotlin.Iterator<T> in kotlin).iterator()
// REF: (for kotlin.Iterator<T> in kotlin.collections).iterator()
// REF: (in kotlin.Iterator).hasNext()
// REF: (in kotlin.Iterator).next()
@@ -3,6 +3,6 @@ fun main() {
}
// MULTIRESOLVE
// REF: (for kotlin.CharSequence in kotlin).iterator()
// REF: (for kotlin.CharSequence in kotlin.text).iterator()
// REF: (in kotlin.CharIterator).next()
// REF: (in kotlin.Iterator).hasNext()
@@ -27,7 +27,7 @@ import org.jetbrains.kotlin.name.FqName
public class ClsStubConsistencyTest : StubConsistencyBaseTest() {
override fun getVirtualFileFinder(): VirtualFileFinder = JvmVirtualFileFinder.SERVICE.getInstance(getProject())
override fun getFileIds(): List<ClassId> = listOf(ClassId.topLevel(FqName("kotlin.CollectionsKt")))
override fun getFileIds(): List<ClassId> = listOf(ClassId.topLevel(FqName("kotlin.collections.CollectionsKt")))
override fun createStubBuilder() = KotlinClsStubBuilder()
@@ -38,9 +38,9 @@ public class DecompiledTextConsistencyTest : TextConsistencyBaseTest() {
override fun getPackages(): List<FqName> = emptyList()
override fun getFacades(): List<FqName> = listOf(FqName("kotlin.CollectionsKt"))
override fun getFacades(): List<FqName> = listOf(FqName("kotlin.collections.CollectionsKt"))
override fun getTopLevelMembers(): Map<String, String> = mapOf("kotlin.CollectionsKt" to "linkedListOf")
override fun getTopLevelMembers(): Map<String, String> = mapOf("kotlin.collections.CollectionsKt" to "linkedListOf")
override fun getVirtualFileFinder(): VirtualFileFinder =
JvmVirtualFileFinder.SERVICE.getInstance(project)