Add tests for 'if-when' and 'when' transformations

This commit is contained in:
Alexey Sedunov
2013-04-26 14:36:31 +04:00
parent 06d43a8ab3
commit 7dd5a2cfa4
68 changed files with 799 additions and 2 deletions
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if (n == 0)
"zero"
else if (n == 1)
"one"
else if (n == 2)
"two"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n == 0 -> "zero"
n == 1 -> "one"
n == 2 -> "two"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(obj: Any): String {
return <caret>if (obj is String)
"string"
else if (obj is Int)
"int"
else if (obj is Class<*>)
"class"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when {
obj is String -> "string"
obj is Int -> "int"
obj is Class<*> -> "class"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if ((n < 0) || (n > 1000))
"unknown"
else if (n <= 10)
"small"
else if (n <= 100)
"average"
else "big"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n < 0, n > 1000 -> "unknown"
n <= 10 -> "small"
n <= 100 -> "average"
else -> "big"
}
}
@@ -0,0 +1,9 @@
fun test(obj: Any): String {
return <caret>if (obj !is Iterable<*>)
"not iterable"
else if (obj !is Collection<*>)
"not collection"
else if (obj !is MutableCollection<*>)
"not mutable collection"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when {
obj !is Iterable<*> -> "not iterable"
obj !is Collection<*> -> "not collection"
obj !is MutableCollection<*> -> "not mutable collection"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if (n !in 0..1000)
"unknown"
else if (n !in 0..100)
"big"
else if (n !in 0..10)
"average"
else "small"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n !in 0..1000 -> "unknown"
n !in 0..100 -> "big"
n !in 0..10 -> "average"
else -> "small"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if (n in 0..10)
"small"
else if (n in 10..100)
"average"
else if (n in 100..1000)
"big"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n in 10..100 -> "average"
n in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if ((n in 0..5) || (n in 5..10))
"small"
else if ((n in 10..50) || (n in 50..100))
"average"
else if ((n in 100..500) || (n in 500..1000))
"big"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..5, n in 5..10 -> "small"
n in 10..50, n in 50..100 -> "average"
n in 100..500, n in 500..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if ((n in 0..5) || (n in 5..10))
"small"
else if ((n in 10..50) || (n in 50..100))
"average"
else if ((n in 100..500) || (n in 500..1000))
"big"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..5, n in 5..10 -> "small"
n in 10..50, n in 50..100 -> "average"
n in 100..500, n in 500..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
0 -> "zero"
1 -> "one"
2 -> "two"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if (n == 0)
"zero"
else if (n == 1)
"one"
else if (n == 2)
"two"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n < 0, n > 1000 -> "unknown"
n <= 10 -> "small"
n <= 100 -> "average"
else -> "big"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if ((n < 0) || (n > 1000))
"unknown"
else if (n <= 10)
"small"
else if (n <= 100)
"average"
else "big"
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when (obj) {
!is Iterable<*> -> "not iterable"
!is Collection<*> -> "not collection"
!is MutableCollection<*> -> "not mutable collection"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(obj: Any): String {
return <caret>if (obj !is Iterable<*>)
"not iterable"
else if (obj !is Collection<*>)
"not collection"
else if (obj !is MutableCollection<*>)
"not mutable collection"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
!in 0..1000 -> "unknown"
!in 0..100 -> "big"
!in 0..10 -> "average"
else -> "small"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if (n !in 0..1000)
"unknown"
else if (n !in 0..100)
"big"
else if (n !in 0..10)
"average"
else "small"
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when (obj) {
is String -> "string"
is Int -> "int"
is Class<*> -> "class"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(obj: Any): String {
return <caret>if (obj is String)
"string"
else if (obj is Int)
"int"
else if (obj is Class<*>)
"class"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
in 0..10 -> "small"
in 10..100 -> "average"
in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if (n in 0..10)
"small"
else if (n in 10..100)
"average"
else if (n in 100..1000)
"big"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
in 0..5, in 5..10 -> "small"
in 10..50, in 50..100 -> "average"
in 100..500, in 500..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if ((n in 0..5) || (n in 5..10))
"small"
else if ((n in 10..50) || (n in 50..100))
"average"
else if ((n in 100..500) || (n in 500..1000))
"big"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n in 10..100 -> "average"
n in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>if (n in 0..10)
"small"
else if (n in 10..100)
"average"
else if (n in 100..1000)
"big"
else "unknown"
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
0 -> "zero"
1 -> "one"
2 -> "two"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n == 0 -> "zero"
n == 1 -> "one"
n == 2 -> "two"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when (obj) {
!is Iterable<*> -> "not iterable"
!is Collection<*> -> "not collection"
!is MutableCollection<*> -> "not mutable collection"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when {
obj !is Iterable<*> -> "not iterable"
obj !is Collection<*> -> "not collection"
obj !is MutableCollection<*> -> "not mutable collection"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
!in 0..1000 -> "unknown"
!in 0..100 -> "big"
!in 0..10 -> "average"
else -> "small"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n !in 0..1000 -> "unknown"
n !in 0..100 -> "big"
n !in 0..10 -> "average"
else -> "small"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when (obj) {
is String -> "string"
is Int -> "int"
is Class<*> -> "class"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when {
obj is String -> "string"
obj is Int -> "int"
obj is Class<*> -> "class"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
in 0..10 -> "small"
in 10..100 -> "average"
in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n in 10..100 -> "average"
n in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
in 0..5, in 5..10 -> "small"
in 10..50, in 50..100 -> "average"
in 100..500, in 500..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..5, n in 5..10 -> "small"
n in 10..50, n in 50..100 -> "average"
n in 100..500, n in 500..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
//IS_APPLICABLE: false
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n in 10..100 -> "average"
n in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,11 @@
fun test(n: Int): String {
return <caret>when(n) {
in 0..10 -> "small"
in 10..100 -> "average"
else -> when(n) {
in 100..1000 -> "big"
in 1000..10000 -> "very big"
else -> "unknown"
}
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>when (n) {
in 0..10 -> "small"
in 10..100 -> "average"
in 100..1000 -> "big"
in 1000..10000 -> "very big"
else -> "unknown"
}
}
@@ -0,0 +1,12 @@
//IS_APPLICABLE: false
fun test(n: Int): String {
return <caret>when(n) {
in 0..10 -> "small"
in 10..100 -> "average"
else -> when {
n in 100..1000 -> "big"
n in 1000..10000 -> "very big"
else -> "unknown"
}
}
}
@@ -0,0 +1,11 @@
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n in 10..100 -> "average"
else -> when {
n in 100..1000 -> "big"
n in 1000..10000 -> "very big"
else -> "unknown"
}
}
}
@@ -0,0 +1,9 @@
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n in 10..100 -> "average"
n in 100..1000 -> "big"
n in 1000..10000 -> "very big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n == 0 -> "zero"
n == 1 -> "one"
n == 2 -> "two"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
0 -> "zero"
1 -> "one"
2 -> "two"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when {
obj !is Iterable<*> -> "not iterable"
obj !is Collection<*> -> "not collection"
obj !is MutableCollection<*> -> "not mutable collection"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when (obj) {
!is Iterable<*> -> "not iterable"
!is Collection<*> -> "not collection"
!is MutableCollection<*> -> "not mutable collection"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n !in 0..1000 -> "unknown"
n !in 0..100 -> "big"
n !in 0..10 -> "average"
else -> "small"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
!in 0..1000 -> "unknown"
!in 0..100 -> "big"
!in 0..10 -> "average"
else -> "small"
}
}
@@ -0,0 +1,9 @@
//IS_APPLICABLE: false
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n >= 10 && n <= 100 -> "average"
n < 0, n > 1000 -> "unknown"
else -> "big"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when {
obj is String -> "string"
obj is Int -> "int"
obj is Class<*> -> "class"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(obj: Any): String {
return <caret>when (obj) {
is String -> "string"
is Int -> "int"
is Class<*> -> "class"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "small"
n in 10..100 -> "average"
n in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
in 0..10 -> "small"
in 10..100 -> "average"
in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when {
n in 0..5, n in 5..10 -> "small"
n in 10..50, n in 50..100 -> "average"
n in 100..500, n in 500..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,8 @@
fun test(n: Int): String {
return <caret>when (n) {
in 0..5, in 5..10 -> "small"
in 10..50, in 50..100 -> "average"
in 100..500, in 500..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
//IS_APPLICABLE: false
fun test(n: Int): String {
return <caret>when(n) {
in 0..10 -> "small"
in 10..100 -> "average"
in 100..1000 -> "big"
else -> "unknown"
}
}
@@ -0,0 +1,9 @@
//IS_APPLICABLE: false
fun test(n: Int): String {
return <caret>when {
n in 0..10 -> "n is small"
n/10 in 0..10 -> "m is average"
n/100 in 0..10 -> "n is big"
else -> "unknown"
}
}