ReplaceGuardClause inspection: do not remove 'else' branch

#KT-32797 Fixed
This commit is contained in:
Toshiaki Kameyama
2019-07-22 23:01:28 +09:00
committed by Mikhail Glukhikh
parent a3a3c52c24
commit a6690e4e35
11 changed files with 96 additions and 2 deletions
@@ -0,0 +1,4 @@
// WITH_RUNTIME
fun test(flag: Boolean) {
<caret>if (!flag) throw IllegalArgumentException() else println(1)
}
@@ -0,0 +1,5 @@
// WITH_RUNTIME
fun test(flag: Boolean) {
<caret>require(flag)
println(1)
}
@@ -0,0 +1,8 @@
// WITH_RUNTIME
fun test(flag: Boolean) {
<caret>if (!flag) throw IllegalArgumentException()
else {
println(1)
println(2)
}
}
@@ -0,0 +1,6 @@
// WITH_RUNTIME
fun test(flag: Boolean) {
<caret>require(flag)
println(1)
println(2)
}
@@ -0,0 +1,11 @@
// WITH_RUNTIME
fun test(flag: Boolean, i: Int) {
<caret>if (!flag) {
throw IllegalArgumentException()
} else if (i == 0) {
println(0)
} else {
println(1)
println(2)
}
}
@@ -0,0 +1,10 @@
// WITH_RUNTIME
fun test(flag: Boolean, i: Int) {
<caret>require(flag)
if (i == 0) {
println(0)
} else {
println(1)
println(2)
}
}
@@ -0,0 +1,4 @@
// WITH_RUNTIME
fun test(foo: Int?) {
<caret>if (foo == null) throw IllegalArgumentException("test") else println(1)
}
@@ -0,0 +1,5 @@
// WITH_RUNTIME
fun test(foo: Int?) {
<caret>requireNotNull(foo) { "test" }
println(1)
}
@@ -0,0 +1,6 @@
// PROBLEM: none
// WITH_RUNTIME
fun test(flag: Boolean): Int {
return <caret>if (!flag) throw IllegalArgumentException() else 1
}