split SuperGenTest.basicmethod

This commit is contained in:
Stepan Koltsov
2012-02-09 18:39:10 +04:00
parent 8cfc443c93
commit 7ad452109f
4 changed files with 39 additions and 23 deletions
@@ -1,21 +0,0 @@
import java.util.ArrayList
trait Tr {
fun extra() : String = "_"
}
class N() : ArrayList<Any>(), Tr {
override fun add(el: Any) : Boolean {
super<ArrayList>.add(el)
return super<ArrayList>.add(el.toString() + super<Tr>.extra() + el + extra())
}
override fun extra() : String = super<Tr>.extra() + super<Tr>.extra()
}
fun box(): String {
val n = N()
n.add("239")
if (n.get(0) == "239" && n.get(1) == "239_239__") return "OK";
return "fail";
}
@@ -0,0 +1,17 @@
import java.util.ArrayList
class N() : ArrayList<Any>() {
override fun add(el: Any) : Boolean {
if (!super<ArrayList>.add(el)) {
throw Exception()
}
return false
}
}
fun box(): String {
val n = N()
if (n.add("239")) return "fail"
if (n.get(0) == "239") return "OK";
return "fail";
}
@@ -0,0 +1,15 @@
import java.util.ArrayList
trait Tr {
fun extra() : String = "_"
}
class N() : Tr {
override fun extra() : String = super<Tr>.extra() + super<Tr>.extra()
}
fun box(): String {
val n = N()
if (n.extra() == "__") return "OK"
return "fail";
}