[like] 12.18code review add status test, pulic public prams verify, make some currentStatus to private, throw exception instead of bool in moveNext