Sha256: f81d3875c0ef125b4938b5833584938639832e78188c4da376d3e2c3c1a17cca

Contents?: true

Size: 1.52 KB

Versions: 97

Compression:

Stored size: 1.52 KB

Contents

import org.scalatest.{Matchers, FunSuite}

/** @version 1.0.0 */
class LuhnTest extends FunSuite with Matchers {

  test("single digit strings can not be valid") {
    Luhn.valid("1") should be (false)
  }

  test("A single zero is invalid") {
    pending
    Luhn.valid("0") should be (false)
  }

  test("a simple valid SIN that remains valid if reversed") {
    pending
    Luhn.valid("059") should be (true)
  }

  test("a simple valid SIN that becomes invalid if reversed") {
    pending
    Luhn.valid("59") should be (true)
  }

  test("a valid Canadian SIN") {
    pending
    Luhn.valid("055 444 285") should be (true)
  }

  test("invalid Canadian SIN") {
    pending
    Luhn.valid("055 444 286") should be (false)
  }

  test("invalid credit card") {
    pending
    Luhn.valid("8273 1232 7352 0569") should be (false)
  }

  test("valid strings with a non-digit included become invalid") {
    pending
    Luhn.valid("055a 444 285") should be (false)
  }

  test("valid strings with punctuation included become invalid") {
    pending
    Luhn.valid("055-444-285") should be (false)
  }

  test("valid strings with symbols included become invalid") {
    pending
    Luhn.valid("055£ 444$ 285") should be (false)
  }

  test("single zero with space is invalid") {
    pending
    Luhn.valid(" 0") should be (false)
  }

  test("more than a single zero is valid") {
    pending
    Luhn.valid("0000 0") should be (true)
  }

  test("input digit 9 is correctly converted to output digit 9") {
    pending
    Luhn.valid("091") should be (true)
  }
}

Version data entries

97 entries across 97 versions & 1 rubygems

Version Path
trackler-2.2.1.107 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.106 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.105 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.104 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.103 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.102 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.101 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.100 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.99 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.98 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.97 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.96 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.95 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.94 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.93 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.92 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.91 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.90 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.89 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala
trackler-2.2.1.88 tracks/scala/exercises/luhn/src/test/scala/LuhnTest.scala