Just noticed this while I was here: Given that this is a critical path, I'd recommend we look at the private/protected methods and if they're already doing that test, or even better, don't really need it, then I would avoid adding it here.

If a test is actually required, the lower level private/protected method is the thing doing the actual work, so it's probably better to have the test there (so regardless of which code path is taken to the private/protected method - it's covered).