I have many Controller classes that inherit from the SurfaceController and I want ot be able to unit test them. Unfortunately, the Umbraco.Web.UmbracoContext has a private internal constructor, as does the Umbraco.Core.ApplicationContext. The UmbracoWeb.Routing.IRoutesCache interface itself is marked private internal so cannot be used at all, even for a stub.
I can invoke some objects through reflection, but obviously this is less than ideal should the source change.
What are people currently doing to overcome this? Are people simply not unit testing their SurfaceControllers?