It's a good point. I can be a little obsessive about DRY, even in unit tests. ;) I would prefer to use traits in future (although traits are just copy & paste in a clean shirt), but for now, I guess the options are:

- Make a base class in the same namespace as the classes being tested (although I think `RouteProvider` is going to be moved?)
- Unroll the methods back into their respective test classes (most self-contained, least DRY)
- Make a general testing framework (well, base class) for mocking document managers

I must admit, structuring code like this in unit tests isn't a strong area of mine, so I'm happy to be guided by general opinion here.