示例#1
0
        /// <summary>
        /// Tests if clearing all of the pools does actually remove the pools
        /// </summary>
        /// <param name="connectionString"></param>
        private static void ClearAllPoolsTest(string connectionString)
        {
            SqlConnection.ClearAllPools();
            Assert.True(0 == ConnectionPoolWrapper.AllConnectionPools().Length, "Pools exist after clearing all pools");

            SqlConnection connection = new SqlConnection(connectionString);

            connection.Open();
            ConnectionPoolWrapper pool = new ConnectionPoolWrapper(connection);

            connection.Close();
            ConnectionPoolWrapper[] allPools = ConnectionPoolWrapper.AllConnectionPools();
            Assert.True(1 == allPools.Length, "Incorrect number of pools exist");
            Assert.True(allPools[0].Equals(pool), "Saved pool is not in the list of all pools");
            Assert.True(1 == pool.ConnectionCount, "Saved pool has incorrect number of connections");

            SqlConnection.ClearAllPools();
            Assert.True(0 == ConnectionPoolWrapper.AllConnectionPools().Length, "Pools exist after clearing all pools");
            Assert.True(0 == pool.ConnectionCount, "Saved pool has incorrect number of connections");
        }