Kotlinlearncs.online LogoJava
Return to List

Test Writing: Caught Speeding

Imported By: Geoffrey Challen
/ Version: 2021.6.0

You are driving a little too fast, and a police officer stops you. Write code to compute the result, encoded as an Int value: 0=no ticket, 1=small ticket, 2=big ticket. If speed is 60 or less, the result is 0. If speed is between 61 and 80 inclusive, the result is 1. If speed is 81 or more, the result is 2. Unless it is your birthday! On that day, your speed can be 5 higher in all cases.

Test Design Challenge

You're challenge is to write tests for this problem described above.

  • Provide a method named test that accepts no arguments and does not return a value.
  • If the implementation of the class described above is incorrect, your test method should throw an exception.
  • If it is correct, do not throw an exception.
  • You may want to use Kotlin's assert or check methods
fun caughtSpeeding(
speed: Int,
isBirthday: Boolean,
): Int {
return 0 // You may need to remove this starter code
}