more unit tests and a stub that exposes protected methods