public void CloneWithUsesNewConnectionString(bool openConnection) { using var connection = new MySqlConnection(AppConfig.ConnectionString); if (openConnection) { connection.Open(); } using var connection2 = connection.CloneWith("user=root;password=pass;server=example.com;database=test"); Assert.Equal("User Id=root;Password=pass;Server=example.com;Database=test", connection2.ConnectionString); }
public static ServerVersion AutoDetect(MySqlConnection connection) { using var clonedConnection = connection.CloneWith( new MySqlConnectionStringBuilder(connection.ConnectionString) { Database = string.Empty }.ConnectionString); clonedConnection.Open(); return(new ServerVersion(clonedConnection.ServerVersion)); }
public void CloneWithCopiesExistingPassword() { using var connection = new MySqlConnection(AppConfig.ConnectionString); connection.Open(); var builder = AppConfig.CreateConnectionStringBuilder(); builder.Password = ""; using var connection2 = connection.CloneWith(builder.ConnectionString); connection2.Open(); Assert.Equal(ConnectionState.Open, connection2.State); }
public void CloneWithUsesExistingPassword() { using var connection = new MySqlConnection(AppConfig.ConnectionString); var newConnectionString = "user=root;server=example.com;database=test"; using var connection2 = connection.CloneWith(newConnectionString); var builder = new MySqlConnectionStringBuilder(newConnectionString); builder.Password = AppConfig.CreateConnectionStringBuilder().Password; Assert.Equal(builder.ConnectionString, connection2.ConnectionString); }
public void CloneWithDoesNotDiscloseExistingPassword(bool persistSecurityInfo) { using var connection = new MySqlConnection(AppConfig.ConnectionString); connection.Open(); var newConnectionString = "user=root;server=example.com;database=test;Persist Security Info=" + persistSecurityInfo; using var connection2 = connection.CloneWith(newConnectionString); var builder = new MySqlConnectionStringBuilder(newConnectionString); Assert.Equal(builder.ConnectionString, connection2.ConnectionString); }
public static ServerVersion AutoDetect(MySqlConnection connection) { string serverVersion; if (connection.State != ConnectionState.Open) { using var clonedConnection = connection.CloneWith( new MySqlConnectionStringBuilder(connection.ConnectionString) { Database = string.Empty }.ConnectionString); clonedConnection.Open(); serverVersion = clonedConnection.ServerVersion; } else { serverVersion = connection.ServerVersion; } return(FromString(serverVersion)); }