public void EqualsShouldReturnTrueWhenBothModelsAreNull() { ModelEqualityComparer<ModelStub> comparer = new ModelEqualityComparer<ModelStub>(); Assert.That(((IEqualityComparer)comparer).Equals(null, null), Is.True); Assert.That(((IEqualityComparer<ModelStub>)comparer).Equals(null, null), Is.True); }
public void GetHashCodeShouldReturnTheModelsHashCode() { var modelA = new ModelStub(System.Guid.NewGuid(), 1); ModelEqualityComparer<ModelStub> comparer = new ModelEqualityComparer<ModelStub>(); Assert.That(((IEqualityComparer)comparer).GetHashCode(modelA), Is.EqualTo(modelA.GetHashCode())); Assert.That(((IEqualityComparer<ModelStub>)comparer).GetHashCode(modelA), Is.EqualTo(modelA.GetHashCode())); }
public void EqualsShouldReturnTrueWhenBothModelsAreEqual() { var modelA = new ModelStub(System.Guid.NewGuid(), 1); var modelB = new ModelStub(modelA.Id, 1); ModelEqualityComparer<ModelStub> comparer = new ModelEqualityComparer<ModelStub>(); Assert.That(((IEqualityComparer)comparer).Equals(modelA, modelB), Is.True); Assert.That(((IEqualityComparer<ModelStub>)comparer).Equals(modelA, modelB), Is.True); }
public void EqualsShouldReturnFalseWhenEitherModelIsNull() { var modelA = new ModelStub(System.Guid.NewGuid(), 1); var modelB = new ModelStub(modelA.Id, 1); ModelEqualityComparer<ModelStub> comparer = new ModelEqualityComparer<ModelStub>(); Assert.That(((IEqualityComparer)comparer).Equals(modelA, null), Is.False); Assert.That(((IEqualityComparer)comparer).Equals(null, modelB), Is.False); Assert.That(((IEqualityComparer<ModelStub>)comparer).Equals(modelA, null), Is.False); Assert.That(((IEqualityComparer<ModelStub>)comparer).Equals(null, modelB), Is.False); }