package Ġnet . d ank ito . bank ing . f ints . messages . dat ene lement e . basis form ate Ċ Ċ import Ġch . tut tel i . at rium . api . fluent . en _ GB . toBe Ċ import Ġch . tut tel i . at rium . api . fluent . en _ GB . toThrow Ċ import Ġch . tut tel i . at rium . api . ver bs . expect Ċ import Ġnet . d ank ito . bank ing . f ints . messages . Exist enz status Ċ import Ġnet . d ank ito . bank ing . f ints . messages . dat ene lement grup pen . implement ierte . sign atur . S icher heits ident ifik ation Details Ċ import Ġkotlin . test . Test ĊĊ Ċ class ĠText Dat ene lement Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvalidate _ Valid Characters () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= Ġcreate Text Dat ene lement (" Ãł Ã© Ã´ Ã§ Ã± Ã¸ Ã¤ Ã¶ Ã¼ ÃŁ Â¿ ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġunder Test . validate () ĊĊĠĠĠĠĠĠĠ Ġ// Ġthen ĊĠĠĠĠĠĠĠ Ġ// Ġno Ġexception ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvalidate _ G reek Character _ Invalid () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= Ġcreate Text Dat ene lement (" Î± ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġexpect Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġunder Test . validate () ĊĠĠĠĠĠĠĠ Ġ}. toThrow < IllegalArgumentException >() ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvalidate _ C yr il lic Character _ Invalid () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= Ġcreate Text Dat ene lement (" Ð ¯ ") ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġexpect Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġunder Test . validate () ĊĠĠĠĠĠĠĠ Ġ}. toThrow < IllegalArgumentException >() ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġvalidate _ E uro Symbol _ Invalid () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= Ġcreate Text Dat ene lement (" â Ĥ¬ ") Ġ// Ġis Ġonly Ġallowed Ġby ĠISO - 8 8 5 9 - 1 5 , Ġnot Ġby ĠISO - 8 8 5 9 - 1 ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġexpect Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġunder Test . validate () ĊĠĠĠĠĠĠĠ Ġ}. toThrow < IllegalArgumentException >() ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmask Data Elements Separator () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġcustomer System Id WithData Elements Separator Ġ= Ġ" f 8 Cl j : x 3 BG 4 BA AC I / 4 5 9 ll k Xr AQ A " ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ" 1 :: " Ġ+ Ġcustomer System Id WithData Elements Separator . replace (" :", Ġ" ?: ") ĊĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= ĠSicherheits ident ifik ation Details ( customer System Id WithData Elements Separator ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġunder Test . format () ĊĊĊĠĠĠĠĠĠĠ Ġ// Ġthen ĊĠĠĠĠĠĠĠ Ġexpect ( result ). toBe ( expected ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmask Data Element Groups Separator () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġcustomer System Id WithData Element Groups Separator Ġ= Ġ" f 8 Cl j + x 3 BG 4 BA AC I / 4 5 9 ll k Xr AQ A " ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ" 1 :: " Ġ+ Ġcustomer System Id WithData Element Groups Separator . replace ("+ ", Ġ"? +") ĊĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= ĠSicherheits ident ifik ation Details ( customer System Id WithData Element Groups Separator ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġunder Test . format () ĊĊĊĠĠĠĠĠĠĠ Ġ// Ġthen ĊĠĠĠĠĠĠĠ Ġexpect ( result ). toBe ( expected ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmask Segments Separator () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġcustomer System Id With Segments Separator Ġ= Ġ" f 8 Cl j \' x 3 BG 4 BA AC I / 4 5 9 ll k Xr AQ A " ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ" 1 :: " Ġ+ Ġcustomer System Id With Segments Separator . replace (" '", Ġ" ?' ") ĊĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= ĠSicherheits ident ifik ation Details ( customer System Id With Segments Separator ) ĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġunder Test . format () ĊĊĊĠĠĠĠĠĠĠ Ġ// Ġthen ĊĠĠĠĠĠĠĠ Ġexpect ( result ). toBe ( expected ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmask Mask ing Character () Ġ{ ĊĊĠĠĠĠĠĠĠ Ġ// Ġgiven ĊĠĠĠĠĠĠĠ Ġval Ġcustomer System Id With Mask ing Character Ġ= Ġ" f 8 Cl j ? x 3 BG 4 BA AC I / 4 5 9 ll k Xr AQ A " ĊĊĠĠĠĠĠĠĠ Ġval Ġexpected Ġ= Ġ" 1 :: " Ġ+ Ġcustomer System Id With Mask ing Character . replace (" ?", Ġ" ?? ") ĊĊĠĠĠĠĠĠĠ Ġval Ġunder Test Ġ= ĠSicherheits ident ifik ation Details ( customer System Id With Mask ing Character ) ĊĊĊĠĠĠĠĠĠĠ Ġ// Ġwhen ĊĠĠĠĠĠĠĠ Ġval Ġresult Ġ= Ġunder Test . format () ĊĊĊĠĠĠĠĠĠĠ Ġ// Ġthen ĊĠĠĠĠĠĠĠ Ġexpect ( result ). toBe ( expected ) ĊĠĠĠ Ġ} ĊĊĊĠĠĠ Ġprivate Ġfun Ġcreate Text Dat ene lement ( text : ĠString ): ĠText Dat ene lement Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġobject Ġ: ĠText Dat ene lement ( text , ĠEx ist enz status . Mandatory ) Ġ{ Ġ} ĊĠĠĠ Ġ} Ċ Ċ }