Check a pure function against a known answer.

Testing a Function

TestFunction.scala
object Main {
  def square(n: Int): Int = {
    n * n
  }

  def main(args: Array[String]): Unit = {
    val input = 
    val result = square(input)
    val expected = 9
    val status = if (result == expected) "pass" else "fail"

    println("result=" + result)
    println("status=" + status)
  }
}
object Main {
  def square(n: Int): Int = {
    n * n
  }

  def main(args: Array[String]): Unit = {
    val input = 
    val result = square(input)
    val expected = 9
    val status = if (result == expected) "pass" else "fail"

    println("result=" + result)
    println("status=" + status)
  }
}
object Main {
  def square(n: Int): Int = {
    n * n
  }

  def main(args: Array[String]): Unit = {
    val input = 
    val result = square(input)
    val expected = 9
    val status = if (result == expected) "pass" else "fail"

    println("result=" + result)
    println("status=" + status)
  }
}
test-function A pure function always returns the same result for the same input, so a test calls it and compares the result with a known expected value.