Exemple #1
0
        public void Clone_Typed(string?cloneDatabaseName, string expectedDatabaseName)
        {
            var credential = new PSCredential("username", "password".Secure());

            var original = new AzureSqlContext
            {
                ResourceGroupName  = "resource-group",
                ServerName         = "server",
                ServerFullName     = "server.example.com",
                ServerPort         = 1234,
                InstanceName       = "instance",
                DatabaseName       = "database",
                AuthenticationMode = AzureAuthenticationMode.SqlPassword,
                Credential         = credential,
                EncryptionMode     = EncryptionMode.Unverified,
                ConnectTimeout     = 42.Seconds(),
                ClientName         = "client",
                ApplicationName    = "application",
                ApplicationIntent  = ApplicationIntent.ReadOnly,
                ExposeCredentialInConnectionString = true,
                EnableConnectionPooling            = true,
                EnableMultipleActiveResultSets     = true,
            };

            var context = original.Clone(cloneDatabaseName);

            context.Should().NotBeNull().And.NotBeSameAs(original);

            context.ResourceGroupName.Should().Be("resource-group");
            context.ServerName.Should().Be("server");
            context.ServerFullName.Should().Be("server.example.com");
            context.ServerPort.Should().Be(1234);
            context.InstanceName.Should().Be("instance");
            context.DatabaseName.Should().Be(expectedDatabaseName);
            context.AuthenticationMode.Should().Be(AzureAuthenticationMode.SqlPassword);
            context.Credential.Should().BeSameAs(credential);
            context.EncryptionMode.Should().Be(EncryptionMode.Unverified);
            context.ConnectTimeout.Should().Be(42.Seconds());
            context.ClientName.Should().Be("client");
            context.ApplicationName.Should().Be("application");
            context.ApplicationIntent.Should().Be(ApplicationIntent.ReadOnly);
            context.ExposeCredentialInConnectionString.Should().BeTrue();
            context.EnableConnectionPooling.Should().BeTrue();
            context.EnableMultipleActiveResultSets.Should().BeTrue();
        }
Exemple #2
0
        public void Defaults()
        {
            var context = new AzureSqlContext();

            context.ResourceGroupName.Should().BeNull();
            context.ServerName.Should().BeNull();
            context.ServerFullName.Should().BeNull();
            context.ServerPort.Should().BeNull();
            context.InstanceName.Should().BeNull();
            context.DatabaseName.Should().BeNull();
            context.AuthenticationMode.Should().Be(AzureAuthenticationMode.Default);
            context.Credential.Should().BeNull();
            context.EncryptionMode.Should().Be(EncryptionMode.Full);                      // different from SqlContext
            context.ConnectTimeout.Should().BeNull();
            context.ClientName.Should().BeNull();
            context.ApplicationName.Should().BeNull();
            context.ApplicationIntent.Should().Be(ApplicationIntent.ReadWrite);
            context.ExposeCredentialInConnectionString.Should().BeFalse();
            context.EnableConnectionPooling.Should().BeFalse();
            context.EnableMultipleActiveResultSets.Should().BeFalse();
        }