package Ġcom . read Every Word Ċ Ċ import Ġorg . junit . Assert . assertEquals Ċ import Ġorg . junit . Before Ċ import Ġorg . junit . Test Ċ import Ġcom . read Every Word . domain . Book Ċ import Ġcom . read Every Word . domain . Read State Ċ Ċ class ĠBook Tests Ġ{ ĊĊĠĠĠ Ġprivate Ġvar Ġbook : ĠBook ? Ġ= Ġnull ĊĊĠĠĠ Ġ@ Before ĊĠĠĠ Ġfun Ġsetup (){ ĊĠĠĠĠĠĠ Ġbook Ġ= ĠBook ( 1 , Ġ" Foo ", Ġ" Fo ", Ġ 2 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġcreates _ chapter s (){ ĊĠĠĠĠĠĠĠ ĠassertEquals ( 2 , Ġbook ?. chapter Count ) ĊĠĠĠĠĠĠĠ ĠassertEquals ( 2 , Ġbook ?. chapter s ?. count ()) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġis _ not _ started (){ ĊĠĠĠĠĠĠĠ ĠassertEquals ( Read State . NOT _ STARTED , Ġbook ?. read State ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġis _ started (){ ĊĠĠĠĠĠĠĠ Ġbook ?. chapter s ?. first ()?. read Ġ= Ġtrue ĊĠĠĠĠĠĠĠ ĠassertEquals ( Read State . STARTED , Ġbook ?. read State ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġis _ completed (){ ĊĠĠĠĠĠĠĠ Ġbook ?. chapter s ?. first ()?. read Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġbook ?. chapter s ?. last ()?. read Ġ= Ġtrue ĊĠĠĠĠĠĠĠ ĠassertEquals ( Read State . COMPLETED , Ġbook ?. read State ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġprogress _ At _ 0 (){ ĊĠĠĠĠĠĠĠ ĠassertEquals (" 0 %", Ġbook ?. progress ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġprogress _ At _ 5 0 (){ ĊĠĠĠĠĠĠĠ Ġbook ?. chapter s ?. first ()?. read Ġ= Ġtrue ĊĠĠĠĠĠĠĠ ĠassertEquals (" 5 0 %", Ġbook ?. progress ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġprogress _ At _ 1 0 0 (){ ĊĠĠĠĠĠĠĠ Ġbook ?. chapter s ?. first ()?. read Ġ= Ġtrue ĊĠĠĠĠĠĠĠ Ġbook ?. chapter s ?. last ()?. read Ġ= Ġtrue ĊĠĠĠĠĠĠĠ ĠassertEquals (" 1 0 0 %", Ġbook ?. progress ) ĊĠĠĠ Ġ} Ċ }