Testing Basics
Expected Failure
Model a test that expects one input to fail validation.
Expected Failure
ExpectedFailure.kt
fun validateName(name: String): Boolean {
return name.isNotBlank()
}
fun main() {
val name =
val expectedFailure = name.isBlank()
val valid = validateName(name)
val sawFailure = !valid
val testPassed = sawFailure == expectedFailure
println("nameLength=${name.length}")
println("expectedFailure=$expectedFailure")
println("sawFailure=$sawFailure")
println("testPassed=$testPassed")
}
fun validateName(name: String): Boolean {
return name.isNotBlank()
}
fun main() {
val name =
val expectedFailure = name.isBlank()
val valid = validateName(name)
val sawFailure = !valid
val testPassed = sawFailure == expectedFailure
println("nameLength=${name.length}")
println("expectedFailure=$expectedFailure")
println("sawFailure=$sawFailure")
println("testPassed=$testPassed")
}
fun validateName(name: String): Boolean {
return name.isNotBlank()
}
fun main() {
val name =
val expectedFailure = name.isBlank()
val valid = validateName(name)
val sawFailure = !valid
val testPassed = sawFailure == expectedFailure
println("nameLength=${name.length}")
println("expectedFailure=$expectedFailure")
println("sawFailure=$sawFailure")
println("testPassed=$testPassed")
}
testing
Some tests pass only when invalid input is rejected, so the expected failure becomes part of the assertion.