public void CleanupConnectionsTest() { using (var pool = DbManagerTestSettings.CreateConnectionPool()) { var manager = new DbManager(pool); var stack = new Stack<IPoolableDbConnection>(); Assert.AreEqual(0, manager.ConnectionPool.LiveObjects); for (var i = 1; i < 20; i++) { var item = manager.GetConnection(); stack.Push(item); Assert.AreEqual(i, manager.ConnectionPool.LiveObjects, string.Format("Iteration {0}", i)); } while (stack.Count > 0) { var item = stack.Pop(); var start = manager.ConnectionPool.LiveObjects; item.Dispose(); Assert.AreEqual(start - 1, manager.ConnectionPool.LiveObjects); } Assert.AreEqual(0, manager.ConnectionPool.LiveObjects); } }
public void ConnectionTest() { using (var pool = DbManagerTestSettings.CreateConnectionPool()) { var manager = new DbManager(pool); for (var i = 0; i < 10; i++) { Assert.AreEqual(0, manager.ConnectionPool.LiveObjects, string.Format("Iteration {0}", i)); IPoolableDbConnection pConn; IDbConnection conn; using (pConn = manager.GetConnection()) { Assert.AreEqual(1, manager.ConnectionPool.LiveObjects, string.Format("Iteration {0}", i)); conn = pConn.Connection; Assert.IsNotNull(conn); Assert.AreEqual(ConnectionState.Open, conn.State); } Assert.AreEqual(ConnectionState.Closed, conn.State); } } }