The less that's public the better
Tests should only test the public (including protected) interfaces
Code that can't be reached through the public interfaces can be deleted