title: Unit Testing a class with an internal constructor
body: <p>I have a class called "Session" which exposes several public methods. I'd like to Unit Test these, however in production I need to control instantiation of "Session" objects, so delegate construction to to a SessionManager class and have made the Session's constructor internal.</p>
  
  <p>I'd ideally like to test the Session class in isolation from the SessionManager which creates it/them to prove that the public interfaces exposed by the Session work as expected - but can't instantiate a Session from a test without using a SessionManager making my tests more complicated/less useful than they need to be.</p>
  
  <p>What's the best way to deal with this?</p>
  
  <p>Cheers,</p>
  
  <p>Lenny.</p>