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(); }
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(); }