I have a question, or rather a request: could you make the constructor (and possibly the fields) of org.junit.runner.Description "protected" instead of "private". In this way it is impossible to normally subclass Description with a custom implementation.
Why would you like to subclass Description? Well, the latest implementation of Description has a rather difficult hashCode implementation, namely: hashCode = getDisplayName().hashCode(). This poses a problem (or not, but in my case it does) when you create multiple instances of the Description class with the same name.
Hopefully you are willing to incorporate this minor modification, it would surely make my life easier.