Exemple #1
0
        public void TestNonAzureBlockingPeriod(string description, object[] Params)
        {
            string             serverName = Params[0] as string;
            PoolBlockingPeriod?policy     = null;

            if (Params.Length > 1)
            {
                policy = (PoolBlockingPeriod)Params[1];
            }

            string connString = CreateConnectionString(serverName, policy);

            PoolBlockingPeriodNonAzureTest(connString, policy);
        }
Exemple #2
0
        public void TestNonAzureBlockingPeriod(string description, object[] Params)
        {
            string             _          = description; // Using C# Discards as workaround to the XUnit warning.
            string             serverName = Params[0] as string;
            PoolBlockingPeriod?policy     = null;

            if (Params.Length > 1)
            {
                policy = (PoolBlockingPeriod)Params[1];
            }

            string connString = CreateConnectionString(serverName, policy);

            PoolBlockingPeriodNonAzureTest(connString, policy);
        }
Exemple #3
0
        public string CreateConnectionString(string serverName, PoolBlockingPeriod?policy)
        {
            SqlConnectionStringBuilder connBuilder = new SqlConnectionStringBuilder();

            connBuilder.DataSource          = serverName;
            connBuilder.UserID              = "user";
            connBuilder.Password            = "******";
            connBuilder.InitialCatalog      = "test";
            connBuilder.PersistSecurityInfo = true;
            if (policy != null)
            {
                connBuilder.PoolBlockingPeriod = policy.Value;
            }
            return(connBuilder.ToString());
        }
Exemple #4
0
        private void PoolBlockingPeriodAzureTest(string connStr, PoolBlockingPeriod?policy)
        {
            int firstErrorTimeInSecs  = GetConnectionOpenTimeInSeconds(connStr);
            int secondErrorTimeInSecs = GetConnectionOpenTimeInSeconds(connStr);

            switch (policy)
            {
            case PoolBlockingPeriod.AlwaysBlock:
                Assert.InRange(secondErrorTimeInSecs, 0, firstErrorTimeInSecs + CompareMargin);
                break;

            case PoolBlockingPeriod.Auto:
            case PoolBlockingPeriod.NeverBlock:
                Assert.InRange(secondErrorTimeInSecs, 1, 2 * ConnectionTimeout);
                break;
            }
        }
Exemple #5
0
        public void TestSetPolicyWithVariations(string description, string policyString)
        {
            PoolBlockingPeriod?policy = null;

            if (policyString.ToLower().Contains("auto"))
            {
                policy = PoolBlockingPeriod.Auto;
            }
            else if (policyString.ToLower().Contains("always"))
            {
                policy = PoolBlockingPeriod.AlwaysBlock;
            }
            else
            {
                policy = PoolBlockingPeriod.NeverBlock;
            }
            string connString = $"{CreateConnectionString(AzureEndpointSample, null)};{PolicyKeyword}={policyString}";

            PoolBlockingPeriodAzureTest(connString, policy);
        }