Added tests for argument mapping

This commit is contained in:
Svetlana Isakova
2014-05-05 11:27:12 +04:00
parent 8dc932fc50
commit 857aa76cff
23 changed files with 451 additions and 9 deletions
@@ -0,0 +1,12 @@
// !ONLY_ARGUMENTS
// !CALL: foo
// !ARG_1: 11 = ArgumentMatch(t : Comparable<out Any?>, SUCCESS)
// !ARG_2: ls = ArgumentMatch(l : List<Comparable<out Any?>>, SUCCESS)
fun <T> foo(t: T, l: List<T>) {}
fun use(vararg a: Any?) = a
fun test(a: Any, ls: List<String>) {
use(foo(11, ls))
}
@@ -0,0 +1,11 @@
// !ONLY_ARGUMENTS
// !CALL: foo
// !ARG_1: A() = ArgumentMatch(t : A, SUCCESS)
class A {}
fun <T> foo(t: T) {}
fun bar() {
foo(A())
}
@@ -0,0 +1,12 @@
// !ONLY_ARGUMENTS
// !CALL: foo
// !ARG_1: 11 = ArgumentMatch(t : ???, SUCCESS)
// !ARG_2: ls = ArgumentMatch(l : MutableList<???>, SUCCESS)
fun <T> foo(t: T, l: MutableList<T>) {}
fun use(vararg a: Any?) = a
fun test(ls: MutableList<String>) {
use(foo(11, ls))
}
@@ -0,0 +1,9 @@
// !ONLY_ARGUMENTS
// !CALL: foo
// !ARG_1: 11 = ArgumentMatch(l : List<???>, TYPE_MISMATCH)
fun <T> foo(l: List<T>) {}
fun test() {
foo(11)
}