Sha256: 56b1a5da371a622bc75c0ca9d6d272f5a6eabeee1e9a99eb1ed9fb8d0b05c510

Contents?: true

Size: 1.16 KB

Versions: 47

Compression:

Stored size: 1.16 KB

Contents

source('./phone-number.R')
suppressPackageStartupMessages({ require(testthat) })

test_that("cleans the number", {
  expect_equal(parsePhoneNumber("(123) 456-7890"), "1234567890")
})

test_that("cleans numbers with dots", {
  expect_equal(parsePhoneNumber("123.456.7890"), "1234567890")
})

test_that("cleans numbers with multiple spaces", {
  expect_equal(parsePhoneNumber("123 456   7890   "), "1234567890")
})

test_that("invalid when 9 digits", {
  expect_equal(parsePhoneNumber("123456789"), NULL)
})

test_that("invalid when 11 digits", {
  expect_equal(parsePhoneNumber("21234567890"), NULL)
})

test_that("valid when 11 digits and starting with 1", {
  expect_equal(parsePhoneNumber("11234567890"), "1234567890")
})

test_that("invalid when 12 digits", {
  expect_equal(parsePhoneNumber("321234567890"), NULL)
})

test_that("invalid with letters", {
  expect_equal(parsePhoneNumber("123-abc-7890"), NULL)
})

test_that("invalid with punctuations", {
  expect_equal(parsePhoneNumber("123-@:!-7890"), NULL)
})

test_that("invalid with right number of digits but letters mixed in", {
  expect_equal(parsePhoneNumber("1a2b3c4d5e6f7g8h9i0j"), NULL)
})

print("All tests passed!")

Version data entries

47 entries across 47 versions & 1 rubygems

Version Path
trackler-2.0.8.37 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.36 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.35 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.34 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.33 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.32 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.31 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.30 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.29 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.28 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.27 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.26 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.24 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.23 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.22 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.21 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.20 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.19 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.18 tracks/r/exercises/phone-number/test_phone-number.R
trackler-2.0.8.17 tracks/r/exercises/phone-number/test_phone-number.R