public void TestConnectionSummaryComparer() { var summary1 = new ConnectionSummary() { ServerName = "localhost", DatabaseName = "master", UserName = "******" }; var summary2 = new ConnectionSummary() { ServerName = "localhost", DatabaseName = "master", UserName = "******" }; var comparer = new ConnectionSummaryComparer(); Assert.True(comparer.Equals(summary1, summary2)); summary2.DatabaseName = "tempdb"; Assert.False(comparer.Equals(summary1, summary2)); Assert.False(comparer.Equals(null, summary2)); Assert.False(summary1.GetHashCode() == summary2.GetHashCode()); }
public void TestConnectionSummaryComparerHashCode(bool objectNull, string serverName, string databaseName, string userName) { // Given a connection summary and comparer object ConnectionSummary summary = null; if (!objectNull) { summary = new ConnectionSummary() { ServerName = serverName, DatabaseName = databaseName, UserName = userName }; } ConnectionSummaryComparer comparer = new ConnectionSummaryComparer(); // If I compute a hash code int hashCode = comparer.GetHashCode(summary); if (summary == null || (serverName == null && databaseName == null && userName == null)) { // Then I expect it to be 31 for a null summary Assert.Equal(31, hashCode); } else { // And not 31 otherwise Assert.NotEqual(31, hashCode); } }