@ file : Suppress (" ClassName ") Ċ Ċ package Ġio . y eg air . j om Ċ Ċ import Ġio . y eg air . j om . Parsers . digit 1 Ċ import Ġio . y eg air . j om . test . Parse Result Assert . Companion . assertThat Parse Result Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class Ġdigit 1 Ġ{ ĊĊĠĠĠ Ġprivate Ġval Ġparser Ġ= Ġdigit 1 () ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġparse Ġsingle Ġmatching Ġchar `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThat Parse Result ( parser . parse (" 9 ; ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. is Ok (" 9 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Remaining Input ("; ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġparse Ġmultiple Ġmatching Ġchars `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThat Parse Result ( parser . parse (" 4 2 ; ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. is Ok (" 4 2 ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Remaining Input ("; ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġnot Ġparse Ġnon Ġmatching Ġchar `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThat Parse Result ( parser . parse (" M 4 ")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isError ( ParseError . Digit ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Remaining Input (" M 4 ") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġnot Ġparse Ġempty Ġinput `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertThat Parse Result ( parser . parse ("")) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isError ( ParseError . Digit ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Remaining Input ("") ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` should Ġnot Ġparse Ġincomplete Ġtwo Ġbyte Ġutf 8 Ġcode point `() Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġsubmit Ġthe Ġfirst Ġbyte Ġof Ġa Ġtwo - byte Ġutf - 8 Ġcode Ġpoint ĊĠĠĠĠĠĠĠ Ġ// ĠFor Ġexample : Ġ[ 0 xc 3 , Ġ 0 xa 6 ] Ġ= ĠÃ ¦ ĊĠĠĠĠĠĠĠ ĠassertThat Parse Result ( parser . parse ( byte ArrayOf ( 0 xc 3 . to Byte ()))) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. isError ( ParseError . Digit ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. has Remaining Input ( byte ArrayOf ( 0 xc 3 . to Byte ())) ĊĠĠĠ Ġ} Ċ } Ċ