public void WhenAskForWritableConnection_ThenSessionGoesWritable()
        {
            var session = new Session();
            var sessionManager = new Mock<ISessionManager>(MockBehavior.Loose);
            sessionManager.Setup(c => c.SetSessionOnWritable()).Verifiable();
            var activeServers = new Server[]{
                new Server("active1"){ IsUp = true, IsWritable = true },
            };
            var cnxManager = this.CreateCnxManager(session, sessionManager,
                activeServers, Enumerable.Empty<Server>());

            Assert.False(session.IsInWritableMode());

            var dbCnx = cnxManager.GetWritableConnection();

            sessionManager.Verify(c => c.SetSessionOnWritable(), Times.Once(), "set session write not called");
        }
 public SessionScope(Session session)
 {
     this.session = session;
     this.isWritableMode = session.IsInWritableMode();
 }