make most codegen tests are indenendent from jdk-headers/stdlib now

This commit is contained in:
Stepan Koltsov
2012-05-01 23:49:22 +04:00
parent 518f50692f
commit 5e77ca553c
33 changed files with 232 additions and 176 deletions
@@ -12,7 +12,7 @@ class ArrayWrapper<T>() {
}
fun get(index: Int): T {
return contents.get(index)
return contents.get(index)!!
}
}
@@ -15,7 +15,7 @@ class ArrayWrapper<T>() {
}
fun get(index: Int): T {
return contents.get(index)
return contents.get(index)!!
}
}
@@ -15,7 +15,7 @@ class ArrayWrapper<T>() {
}
fun get(index: Int): T {
return contents.get(index)
return contents.get(index)!!
}
}
@@ -15,7 +15,7 @@ class ArrayWrapper<T>() {
}
fun get(index: Int): T {
return contents.get(index)
return contents.get(index)!!
}
}
@@ -19,28 +19,28 @@ fun box() : String {
val c1: java.lang.Iterable<Int> = MyCollection1()
sum = 0
for (el in c1) {
sum = sum + el
sum = sum + el!!
}
if(sum != 15) return "c1 failed"
val c2 = MyCollection1()
sum = 0
for (el in c2) {
sum = sum + el
sum = sum + el!!
}
if(sum != 15) return "c2 failed"
val c3: Iterable<Int> = MyCollection2()
sum = 0
for (el in c3) {
sum = sum + el
sum = sum + el!!
}
if(sum != 15) return "c3 failed"
val c4 = MyCollection2()
sum = 0
for (el in c4) {
sum = sum + el
sum = sum + el!!
}
if(sum != 15) return "c4 failed"
@@ -50,7 +50,7 @@ fun box() : String {
}
sum = 0
for (el in a) {
sum = sum + el
sum = sum + el!!
}
if(sum != 10) return "a failed"
@@ -69,7 +69,7 @@ fun box() : String {
val c7 = MyCollection5()
sum = 0
for (el in c7) {
sum = sum + el
sum = sum + el!!
}
if(sum != 0) return "c7 failed"
+21 -12
View File
@@ -1,5 +1,3 @@
import java.util.ArrayList
class MyNumber(val i: Int) {
fun inc(): MyNumber = MyNumber(i+1)
}
@@ -52,21 +50,32 @@ fun test6() : Boolean {
return true
}
// ArrayList without jdk-headers cannot be used in these tests
class MyArrayList<T>(var value: T) {
fun get(index: Int): T {
if (index != 17)
throw Exception()
return value
}
fun set(index: Int, value: T): Unit {
if (index != 17)
throw Exception()
this.value = value
}
}
fun test7() : Boolean {
var mnr = ArrayList<MyNumber>()
mnr.add(MyNumber(42))
mnr[0]++
if (mnr[0].i != 43) return false
var mnr = MyArrayList<MyNumber>(MyNumber(42))
mnr[17]++
if (mnr[17].i != 43) return false
return true
}
fun test8() : Boolean {
var mnr = ArrayList<MyNumber>()
mnr.add(MyNumber(42))
mnr.add(MyNumber(41))
mnr[1] = mnr[0]++
if (mnr[0].i != 43) return false
if (mnr[1].i != 42) return false
var mnr = MyArrayList<MyNumber>(MyNumber(42))
val old = mnr[17]++
if (old.i != 42) return false
if (mnr[17].i != 43) return false
return true
}
@@ -14,5 +14,5 @@ var <T> ArrayList<T>.length : Int
set(value: Int) = throw java.lang.Error()
var <T> ArrayList<T>.last : T
get() = get(size()-1)
get() = get(size()-1).sure()
set(el : T) { set(size()-1, el) }
@@ -1,7 +1,7 @@
import java.util.ArrayList
class N() : ArrayList<Any>() {
override fun add(el: Any) : Boolean {
override fun add(el: Any?) : Boolean {
if (!super<ArrayList>.add(el)) {
throw Exception()
}