public void Equals_should_return_false_when_any_fields_are_not_equal( [Values("fsync", "journal", "w", "wTimeout")] string notEqualFieldName) { var subject1 = new WriteConcern(1, TimeSpan.FromSeconds(1), false, false); WriteConcern subject2; switch (notEqualFieldName) { case "fsync": subject2 = subject1.With(fsync: true); break; case "journal": subject2 = subject1.With(journal: true); break; case "w": subject2 = subject1.With(w: 2); break; case "wTimeout": subject2 = subject1.With(wTimeout: TimeSpan.FromSeconds(2)); break; default: throw new ArgumentException("notEqualFieldName"); } var result1 = subject1.Equals(subject2); var result2 = subject1.Equals((object)subject2); var hashCode1 = subject1.GetHashCode(); var hashCode2 = subject2.GetHashCode(); result1.Should().BeFalse(); result2.Should().BeFalse(); hashCode1.Should().NotBe(hashCode2); }
public void Equals_should_return_false_if_journal_is_not_equal(bool?journal1, bool?journal2) { var writeConcern1 = new WriteConcern(null, null, null, journal1); var writeConcern2 = new WriteConcern(null, null, null, journal2); writeConcern1.Equals((WriteConcern)writeConcern2).Should().BeFalse(); writeConcern1.Equals((object)writeConcern2).Should().BeFalse(); writeConcern1.GetHashCode().Should().NotBe(writeConcern2.GetHashCode()); }
public void Equals_should_return_false_if_fsync_is_not_equal(bool?fsync1, bool?fsync2) { var writeConcern1 = new WriteConcern(null, null, fsync1, null); var writeConcern2 = new WriteConcern(null, null, fsync2, null); writeConcern1.Equals((WriteConcern)writeConcern2).Should().BeFalse(); writeConcern1.Equals((object)writeConcern2).Should().BeFalse(); writeConcern1.GetHashCode().Should().NotBe(writeConcern2.GetHashCode()); }
public void Equals_should_return_false_when_other_is_null() { var subject = new WriteConcern(1, TimeSpan.FromSeconds(1), false, false); var result1 = subject.Equals((WriteConcern)null); var result2 = subject.Equals((object)null); result1.Should().BeFalse(); result2.Should().BeFalse(); }
public void Equals_should_return_false_if_wTimeout_is_not_equal(int?wTimeout1Seconds, int?wTimeout2Seconds) { var wTimeout1 = wTimeout1Seconds.HasValue ? (TimeSpan?)TimeSpan.FromSeconds(wTimeout1Seconds.Value) : null; var wTimeout2 = wTimeout2Seconds.HasValue ? (TimeSpan?)TimeSpan.FromSeconds(wTimeout2Seconds.Value) : null; var writeConcern1 = new WriteConcern(null, wTimeout1, null, null); var writeConcern2 = new WriteConcern(null, wTimeout2, null, null); writeConcern1.Equals((WriteConcern)writeConcern2).Should().BeFalse(); writeConcern1.Equals((object)writeConcern2).Should().BeFalse(); writeConcern1.GetHashCode().Should().NotBe(writeConcern2.GetHashCode()); }
public void Equals_should_return_false_if_w_is_not_equal(int?w1, int?w2) { var wCount1 = w1.HasValue ? (WriteConcern.WValue)w1.Value : null; var wCount2 = w2.HasValue ? (WriteConcern.WValue)w2.Value : null; var writeConcern1 = new WriteConcern(wCount1, null, null, null); var writeConcern2 = new WriteConcern(wCount2, null, null, null); writeConcern1.Equals((WriteConcern)writeConcern2).Should().BeFalse(); writeConcern1.Equals((object)writeConcern2).Should().BeFalse(); writeConcern1.GetHashCode().Should().NotBe(writeConcern2.GetHashCode()); }
public void Equals_should_return_true_if_all_fields_are_equal(int?w, int?wTimeoutSeconds, bool?fsync, bool?journal) { var wCount = w.HasValue ? (WriteConcern.WValue)w.Value : null; var wTimeout = wTimeoutSeconds.HasValue ? (TimeSpan?)TimeSpan.FromSeconds(wTimeoutSeconds.Value) : null; var writeConcern1 = new WriteConcern(wCount, wTimeout, fsync, journal); var writeConcern2 = new WriteConcern(wCount, wTimeout, fsync, journal); writeConcern1.Equals((WriteConcern)writeConcern2).Should().BeTrue(); writeConcern1.Equals((object)writeConcern2).Should().BeTrue(); writeConcern1.GetHashCode().Should().Be(writeConcern2.GetHashCode()); }
public void Equals_should_return_true_when_all_fields_are_equal() { var subject1 = new WriteConcern(1, TimeSpan.FromSeconds(1), false, false); var subject2 = new WriteConcern(1, TimeSpan.FromSeconds(1), false, false); var result1 = subject1.Equals(subject2); var result2 = subject1.Equals((object)subject2); var hashCode1 = subject1.GetHashCode(); var hashCode2 = subject2.GetHashCode(); result1.Should().BeTrue(); result2.Should().BeTrue(); hashCode1.Should().Be(hashCode2); }
/// <summary> /// Determines whether the specified <see cref="System.Object" /> is equal to this instance. /// </summary> /// <param name="obj">The <see cref="System.Object" /> to compare with this instance.</param> /// <returns> /// <c>true</c> if the specified <see cref="System.Object" /> is equal to this instance; otherwise, <c>false</c>. /// </returns> public override bool Equals(object obj) { if (object.ReferenceEquals(obj, null) || GetType() != obj.GetType()) { return(false); } var rhs = (MongoServerSettings)obj; return (object.ReferenceEquals(_clusterConfigurator, rhs._clusterConfigurator) && _connectionMode == rhs._connectionMode && _connectTimeout == rhs._connectTimeout && _credentials == rhs._credentials && _guidRepresentation == rhs._guidRepresentation && _ipv6 == rhs._ipv6 && _maxConnectionIdleTime == rhs._maxConnectionIdleTime && _maxConnectionLifeTime == rhs._maxConnectionLifeTime && _maxConnectionPoolSize == rhs._maxConnectionPoolSize && _minConnectionPoolSize == rhs._minConnectionPoolSize && _operationTimeout == rhs._operationTimeout && object.Equals(_readEncoding, rhs._readEncoding) && _readPreference.Equals(rhs._readPreference) && _replicaSetName == rhs._replicaSetName && _localThreshold == rhs._localThreshold && _servers.SequenceEqual(rhs._servers) && _serverSelectionTimeout == rhs._serverSelectionTimeout && _socketTimeout == rhs._socketTimeout && _sslSettings == rhs._sslSettings && _useSsl == rhs._useSsl && _verifySslCertificate == rhs._verifySslCertificate && _waitQueueSize == rhs._waitQueueSize && _waitQueueTimeout == rhs._waitQueueTimeout && _writeConcern.Equals(rhs._writeConcern) && object.Equals(_writeEncoding, rhs._writeEncoding)); }
public void Equals_should_return_false_when_other_is_wrong_type() { var subject = new WriteConcern(1, TimeSpan.FromSeconds(1), false, false); var other = new object(); var result = subject.Equals(other); result.Should().BeFalse(); }
/// <summary> /// Determines whether the specified <see cref="System.Object" /> is equal to this instance. /// </summary> /// <param name="obj">The <see cref="System.Object" /> to compare with this instance.</param> /// <returns> /// <c>true</c> if the specified <see cref="System.Object" /> is equal to this instance; otherwise, <c>false</c>. /// </returns> public override bool Equals(object obj) { if (object.ReferenceEquals(obj, null) || GetType() != obj.GetType()) { return(false); } var rhs = (MongoServerSettings)obj; return (_allowInsecureTls == rhs._allowInsecureTls && _applicationName == rhs._applicationName && object.ReferenceEquals(_clusterConfigurator, rhs._clusterConfigurator) && _compressors.SequenceEqual(rhs._compressors) && _connectionMode == rhs._connectionMode && _connectTimeout == rhs._connectTimeout && _credentials == rhs._credentials && _guidRepresentation == rhs._guidRepresentation && _heartbeatInterval == rhs._heartbeatInterval && _heartbeatTimeout == rhs._heartbeatTimeout && _ipv6 == rhs._ipv6 && _maxConnectionIdleTime == rhs._maxConnectionIdleTime && _maxConnectionLifeTime == rhs._maxConnectionLifeTime && _maxConnectionPoolSize == rhs._maxConnectionPoolSize && _minConnectionPoolSize == rhs._minConnectionPoolSize && _operationTimeout == rhs._operationTimeout && object.Equals(_readConcern, rhs._readConcern) && object.Equals(_readEncoding, rhs._readEncoding) && _readPreference.Equals(rhs._readPreference) && _replicaSetName == rhs._replicaSetName && _retryReads == rhs._retryReads && _retryWrites == rhs._retryWrites && _localThreshold == rhs._localThreshold && _scheme == rhs._scheme && _sdamLogFilename == rhs._sdamLogFilename && _servers.SequenceEqual(rhs._servers) && _serverSelectionTimeout == rhs._serverSelectionTimeout && _socketTimeout == rhs._socketTimeout && _sslSettings == rhs._sslSettings && _useTls == rhs._useTls && _waitQueueSize == rhs._waitQueueSize && _waitQueueTimeout == rhs._waitQueueTimeout && _writeConcern.Equals(rhs._writeConcern) && object.Equals(_writeEncoding, rhs._writeEncoding)); }