package Ġtop . col man . simple cpf validator Ċ Ċ import Ġio . kot lint est . inspect ors . for None Ċ import Ġio . kot lint est . matchers . boolean . shouldBe True Ċ import Ġio . kot lint est . properties . Gen Ċ import Ġio . kot lint est . properties . for All Ċ import Ġio . kot lint est . properties . for None Ċ import Ġio . kot lint est . specs . Fun Spec Ċ Ċ class ĠC pf Validator Test Ġ: ĠFun Spec () Ġ{ ĊĠĠĠĠĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġtest (" Should Ġreturn Ġfalse Ġon Ġblack listed ĠC PF s ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġblack listed Cp fs . for None Ġ{ Ġit . shouldBe C pf () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ Ġtest (" Should Ġreturn Ġtrue Ġon Ġvalid ĠC PF s ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠValid C pf Generator . for All Ġ{ Ġc pf Ġ-> Ġc pf . is C pf () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ Ġtest (" Should Ġreturn Ġfalse Ġon Ġrandom Ġstrings ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGen . string (). for None Ġ{ Ġc pf Ġ-> Ġc pf . is C pf () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ Ġtest (" Should Ġreturn Ġfalse Ġon Ġinvalid Ġbut Ġnon - black listed ĠC PF ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġknown Invalid Cp fs . for None Ġ{ Ġit . shouldBe C pf () Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ Ġtest (" Should Ġsanitize Ġthe ĠString Ġgiven Ġreplace able Ġcharacters Ġand Ġstill Ġreturn Ġtrue Ġon Ġvalid Ġcp fs ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠValid C pf Generator . map Ġ{ Ġ"$ it .. -- ." Ġ}. for All Ġ{ Ġc pf Ġ-> Ġc pf . is C pf ( listOf ('.', Ġ'- ')) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĊĠĠĠĠĠĠĠ Ġtest (" Should n 't Ġsanitize Ġunspecified Ġcharacters ") Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠValid C pf Generator . map Ġ{ Ġ"$ it ++ " Ġ}. for None Ġ{ Ġc pf Ġ-> Ġc pf . is C pf ( listOf ('.', Ġ'- ')) Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠĠĊĠĠĠ Ġprivate Ġfun ĠString . shouldBe C pf () Ġ= Ġthis . is C pf (). shouldBe True () Ċ } Ċ Ċ private Ġval Ġblack listed Cp fs Ġ= ĠlistOf ( ĊĠĠĠ Ġ" 0 0 0 0 0 0 0 0 0 0 0 ", ĊĠĠĠ Ġ" 1 1 1 1 1 1 1 1 1 1 1 ", ĊĠĠĠ Ġ" 2 2 2 2 2 2 2 2 2 2 2 ", ĊĠĠĠ Ġ" 3 3 3 3 3 3 3 3 3 3 3 ", ĊĠĠĠ Ġ" 4 4 4 4 4 4 4 4 4 4 4 ", ĊĠĠĠ Ġ" 5 5 5 5 5 5 5 5 5 5 5 ", ĊĠĠĠ Ġ" 6 6 6 6 6 6 6 6 6 6 6 ", ĊĠĠĠ Ġ" 7 7 7 7 7 7 7 7 7 7 7 ", ĊĠĠĠ Ġ" 8 8 8 8 8 8 8 8 8 8 8 ", ĊĠĠĠ Ġ" 9 9 9 9 9 9 9 9 9 9 9 " Ċ ) Ċ Ċ // ĠGenerated Ġsome Ġvalid ĠC PF s Ġand Ġchanged Ġthe Ġverification Ġdigits Ċ private Ġval Ġknown Invalid Cp fs Ġ= ĠlistOf ( ĊĠĠĠ Ġ" 0 1 2 0 2 3 0 1 2 0 4 ", ĊĠĠĠ Ġ" 7 3 6 8 1 2 4 3 1 9 1 ", ĊĠĠĠ Ġ" 2 5 4 0 7 7 1 4 3 2 0 ", ĊĠĠĠ Ġ" 1 1 4 3 8 2 7 3 8 4 4 ", ĊĠĠĠ Ġ" 1 8 7 0 6 8 6 3 0 6 1 ", ĊĠĠĠ Ġ" 6 7 3 5 8 6 7 8 3 1 2 ", ĊĠĠĠ Ġ" 5 7 5 0 6 6 2 0 3 9 2 ", ĊĠĠĠ Ġ" 4 6 6 3 7 5 8 7 0 3 7 ", ĊĠĠĠ Ġ" 7 2 3 6 6 2 7 2 8 3 0 ", ĊĠĠĠ Ġ" 5 0 7 6 3 3 2 1 0 6 1 ", ĊĠĠĠ Ġ" 0 4 7 1 6 4 8 1 2 4 8 ", ĊĠĠĠ Ġ" 2 7 7 3 6 7 4 1 4 6 9 ", ĊĠĠĠ Ġ" 4 8 6 3 2 4 8 8 6 5 2 ", ĊĠĠĠ Ġ" 2 2 7 0 0 0 8 1 7 0 7 ", ĊĠĠĠ Ġ" 1 7 6 2 1 4 0 2 8 4 0 ", ĊĠĠĠ Ġ" 6 4 0 1 0 0 6 3 2 3 9 " Ċ ) Ċ