package Ġexp res iones . lexer Ċ Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Test Ċ Ċ class ĠLex er Test Ġ{ ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` lex ing Ġequals Ġexpression Ġgives Ġexpected Ġtokens `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf (" Identifier ", Ġ" Equals _", Ġ" Identifier ", Ġ" EOF "), Ġtokens Names ( lexer For Code (" a == b ")) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` lex ing Ġstring Ġliteral Ġgives Ġexpected Ġtokens `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf (" StringLiteral ", Ġ" EOF "), Ġtokens Names ( lexer For Code ("' a ' ")) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` lex ing Ġp aren Ġexpression Ġgives Ġexpected Ġtokens `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf (" LP aren _", Ġ" Identifier ", Ġ" And _", Ġ" Identifier ", Ġ" RP aren _", Ġ" Or _", Ġ" Identifier ", Ġ" EOF "), Ġtokens Names ( lexer For Code ("( a Ġ&& Ġb ) Ġ|| Ġc ")) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġ` lex ing Ġidentifier Ġwith Ġunderscore Ġgives Ġa Ġsingle Ġtoken `() Ġ{ ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf (" Identifier ", Ġ" EOF "), Ġtokens Names ( lexer For Code (" a _ b ")) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ }