Testing Basics
Table-Driven Cases
Drive checks from a list of input/expected pairs.
Table-Driven Cases
TableCases.scala
object Main {
def triple(n: Int): Int = {
n * 3
}
def main(args: Array[String]): Unit = {
val minInput =
val cases = List((1, 3), (2, 6), (3, 9))
var passes = 0
for ((input, expected) <- cases) {
if (input >= minInput && triple(input) == expected) {
passes = passes + 1
}
}
println("cases=" + cases.length)
println("passes=" + passes)
}
}
object Main {
def triple(n: Int): Int = {
n * 3
}
def main(args: Array[String]): Unit = {
val minInput =
val cases = List((1, 3), (2, 6), (3, 9))
var passes = 0
for ((input, expected) <- cases) {
if (input >= minInput && triple(input) == expected) {
passes = passes + 1
}
}
println("cases=" + cases.length)
println("passes=" + passes)
}
}
object Main {
def triple(n: Int): Int = {
n * 3
}
def main(args: Array[String]): Unit = {
val minInput =
val cases = List((1, 3), (2, 6), (3, 9))
var passes = 0
for ((input, expected) <- cases) {
if (input >= minInput && triple(input) == expected) {
passes = passes + 1
}
}
println("cases=" + cases.length)
println("passes=" + passes)
}
}
table-cases
A list of `(input, expected)` pairs is a small test table. Iterating the pairs runs the same check on each case and counts the passes.