Index: Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PresentationObjects/ClosingStructuresCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PresentationObjects/ClosingStructuresCalculationGroupContextTest.cs (.../ClosingStructuresCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/ClosingStructures/test/Ringtoets.ClosingStructures.Forms.Test/PresentationObjects/ClosingStructuresCalculationGroupContextTest.cs (.../ClosingStructuresCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.ClosingStructures.Data; @@ -62,242 +64,61 @@ mockRepository.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnFalse() + [TestFixture] + private class ClosingStructuresCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly ClosingStructuresFailureMechanism failureMechanism = new ClosingStructuresFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(null); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsFalse(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override ClosingStructuresCalculationGroupContext CreateObject() + { + return new ClosingStructuresCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedClosingStructuresCalculationGroupContext CreateDerivedObject() + { + return new DerivedClosingStructuresCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new ClosingStructuresCalculationGroupContext(new CalculationGroup(), + parent, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new ClosingStructuresCalculationGroupContext(calculationGroup, + new CalculationGroup(), + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToDerivedObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context1 = new ClosingStructuresCalculationGroupContext(calculationGroup1, - parent, - failureMechanism, - assessmentSection); - var context2 = new ClosingStructuresCalculationGroupContext(calculationGroup2, - parent, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context1 = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent1, - failureMechanism, - assessmentSection); - var context2 = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent2, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context1 = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new ClosingStructuresFailureMechanism(); - var context1 = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new ClosingStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedClosingStructuresCalculationGroupContext : ClosingStructuresCalculationGroupContext { public DerivedClosingStructuresCalculationGroupContext(CalculationGroup calculationGroup, Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/PresentationObjects/GrassCoverErosionInwardsCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/PresentationObjects/GrassCoverErosionInwardsCalculationGroupContextTest.cs (.../GrassCoverErosionInwardsCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/PresentationObjects/GrassCoverErosionInwardsCalculationGroupContextTest.cs (.../GrassCoverErosionInwardsCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -61,242 +63,61 @@ mockRepository.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnFalse() + [TestFixture] + private class GrassCoverErosionInwardsCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly GrassCoverErosionInwardsFailureMechanism failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(null); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsFalse(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override GrassCoverErosionInwardsCalculationGroupContext CreateObject() + { + return new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedGrassCoverErosionInwardsCalculationGroupContext CreateDerivedObject() + { + return new DerivedGrassCoverErosionInwardsCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new GrassCoverErosionInwardsCalculationGroupContext(new CalculationGroup(), + parent, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, + new CalculationGroup(), + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToDerivedObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedGrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context1 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup1, - parent, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup2, - parent, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context1 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent1, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent2, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context1 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var context1 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionInwardsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedGrassCoverErosionInwardsCalculationGroupContext : GrassCoverErosionInwardsCalculationGroupContext { public DerivedGrassCoverErosionInwardsCalculationGroupContext(CalculationGroup calculationGroup, Index: Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Forms.Test/PresentationObjects/GrassCoverErosionOutwardsWaveConditionsCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Forms.Test/PresentationObjects/GrassCoverErosionOutwardsWaveConditionsCalculationGroupContextTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Forms.Test/PresentationObjects/GrassCoverErosionOutwardsWaveConditionsCalculationGroupContextTest.cs (.../GrassCoverErosionOutwardsWaveConditionsCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -60,242 +62,61 @@ mocks.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnFalse() + [TestFixture] + private class GrassCoverErosionOutwardsWaveConditionsCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly GrassCoverErosionOutwardsFailureMechanism failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(null); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsFalse(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext CreateObject() + { + return new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedGrassCoverErosionOutwardsWaveConditionsCalculationsGroupContext CreateDerivedObject() + { + return new DerivedGrassCoverErosionOutwardsWaveConditionsCalculationsGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(new CalculationGroup(), + parent, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, + new CalculationGroup(), + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToDerivedObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedGrassCoverErosionOutwardsWaveConditionsCalculationsGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context1 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup1, - parent, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup2, - parent, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context1 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent1, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent2, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context1 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new GrassCoverErosionOutwardsFailureMechanism(); - var context1 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedGrassCoverErosionOutwardsWaveConditionsCalculationsGroupContext : GrassCoverErosionOutwardsWaveConditionsCalculationGroupContext { public DerivedGrassCoverErosionOutwardsWaveConditionsCalculationsGroupContext(CalculationGroup calculationGroup, Index: Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/PresentationObjects/HeightStructuresCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/PresentationObjects/HeightStructuresCalculationGroupContextTest.cs (.../HeightStructuresCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/PresentationObjects/HeightStructuresCalculationGroupContextTest.cs (.../HeightStructuresCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -62,242 +64,61 @@ mockRepository.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnFalse() + [TestFixture] + private class HeightStructuresCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly HeightStructuresFailureMechanism failureMechanism = new HeightStructuresFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(null); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsFalse(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override HeightStructuresCalculationGroupContext CreateObject() + { + return new HeightStructuresCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedHeightStructuresCalculationGroupContext CreateDerivedObject() + { + return new DerivedHeightStructuresCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new HeightStructuresCalculationGroupContext(new CalculationGroup(), + parent, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new HeightStructuresCalculationGroupContext(calculationGroup, + new CalculationGroup(), + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToDerivedType_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedHeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context1 = new HeightStructuresCalculationGroupContext(calculationGroup1, - parent, - failureMechanism, - assessmentSection); - var context2 = new HeightStructuresCalculationGroupContext(calculationGroup2, - parent, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context1 = new HeightStructuresCalculationGroupContext(calculationGroup, - parent1, - failureMechanism, - assessmentSection); - var context2 = new HeightStructuresCalculationGroupContext(calculationGroup, - parent2, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context1 = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new HeightStructuresFailureMechanism(); - var context1 = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new HeightStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedHeightStructuresCalculationGroupContext : HeightStructuresCalculationGroupContext { public DerivedHeightStructuresCalculationGroupContext(CalculationGroup calculationsGroup, Index: Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Forms.Test/PresentationObjects/MacroStabilityInwardsCalculationGroupContextTest.cs =================================================================== diff -u -r00bd792adac17210dc13583cec522d3fdbc72a5a -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Forms.Test/PresentationObjects/MacroStabilityInwardsCalculationGroupContextTest.cs (.../MacroStabilityInwardsCalculationGroupContextTest.cs) (revision 00bd792adac17210dc13583cec522d3fdbc72a5a) +++ Ringtoets/MacroStabilityInwards/test/Ringtoets.MacroStabilityInwards.Forms.Test/PresentationObjects/MacroStabilityInwardsCalculationGroupContextTest.cs (.../MacroStabilityInwardsCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -20,6 +20,7 @@ // All rights reserved. using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -80,275 +81,70 @@ mocks.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnsFalse() + [TestFixture] + private class MacroStabilityInwardsCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly IEnumerable surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; + private static readonly IEnumerable stochasticSoilModels = new MacroStabilityInwardsStochasticSoilModel[0]; + private static readonly MacroStabilityInwardsFailureMechanism failureMechanism = new MacroStabilityInwardsFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - var groupContext = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Call - bool equalToNull = groupContext.Equals(null); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - // Assert - Assert.IsFalse(equalToNull); - mocks.VerifyAll(); - } + protected override MacroStabilityInwardsCalculationGroupContext CreateObject() + { + return new MacroStabilityInwardsCalculationGroupContext(calculationGroup, + parent, + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToDifferentObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedMacroStabilityInwardsCalculationGroupContext CreateDerivedObject() + { + return new DerivedMacroStabilityInwardsCalculationGroupContext(calculationGroup, + parent, + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); - - var groupContext1 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - - // Call - bool isContextEqualToDifferentObject = groupContext1.Equals(new object()); - - // Assert - Assert.IsFalse(isContextEqualToDifferentObject); - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new MacroStabilityInwardsCalculationGroupContext(new CalculationGroup(), + parent, + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new MacroStabilityInwardsCalculationGroupContext(calculationGroup, + new CalculationGroup(), + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToDerivedClass_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); - - var groupContext = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - - var derivedContext = new DerivedMacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - // Call - bool isContextEqualToDerivedContext = groupContext.Equals(derivedContext); - - // Assert - Assert.IsFalse(isContextEqualToDerivedContext); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToItself_ReturnsTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); - - var groupContext1 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - MacroStabilityInwardsCalculationGroupContext groupContext2 = groupContext1; - - // Call - bool isContext1EqualTo2 = groupContext1.Equals(groupContext2); - bool isContext2EqualTo1 = groupContext2.Equals(groupContext1); - - // Assert - Assert.IsTrue(isContext1EqualTo2); - Assert.IsTrue(isContext2EqualTo1); - mocks.VerifyAll(); - } - - [Test] - public void Equal_ToOtherWithSameWrappedDataAndParent_ReturnsTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); - - var groupContext1 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - var groupContext2 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - - // Call - bool isContext1EqualTo2 = groupContext1.Equals(groupContext2); - bool isContext2EqualTo1 = groupContext2.Equals(groupContext1); - - // Assert - Assert.IsTrue(isContext1EqualTo2); - Assert.IsTrue(isContext2EqualTo1); - mocks.VerifyAll(); - } - - [Test] - public void Equal_ToOtherWithDifferentWrappedData_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var parent = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); - - var groupContext1 = new MacroStabilityInwardsCalculationGroupContext(new CalculationGroup(), - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - var groupContext2 = new MacroStabilityInwardsCalculationGroupContext(new CalculationGroup(), - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - - // Call - bool isContext1EqualTo2 = groupContext1.Equals(groupContext2); - bool isContext2EqualTo1 = groupContext2.Equals(groupContext1); - - // Assert - Assert.IsFalse(isContext1EqualTo2); - Assert.IsFalse(isContext2EqualTo1); - mocks.VerifyAll(); - } - - [Test] - public void Equal_ToOtherWithDifferentParent_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); - - var groupContext1 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - new CalculationGroup(), - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - var groupContext2 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - new CalculationGroup(), - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - - // Call - bool isContext1EqualTo2 = groupContext1.Equals(groupContext2); - bool isContext2EqualTo1 = groupContext2.Equals(groupContext1); - - // Assert - Assert.IsFalse(isContext1EqualTo2); - Assert.IsFalse(isContext2EqualTo1); - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObject_ReturnsSameHashCode() - { - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var surfaceLines = new MacroStabilityInwardsSurfaceLine[0]; - var soilModels = new MacroStabilityInwardsStochasticSoilModel[0]; - var failureMechanism = new MacroStabilityInwardsFailureMechanism(); - - var groupContext1 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - var groupContext2 = new MacroStabilityInwardsCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - - // Call - int hashCode1 = groupContext1.GetHashCode(); - int hashCode2 = groupContext2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - mocks.VerifyAll(); - } - private class DerivedMacroStabilityInwardsCalculationGroupContext : MacroStabilityInwardsCalculationGroupContext { public DerivedMacroStabilityInwardsCalculationGroupContext(CalculationGroup calculationGroup, Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PresentationObjects/PipingCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PresentationObjects/PipingCalculationGroupContextTest.cs (.../PipingCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/PresentationObjects/PipingCalculationGroupContextTest.cs (.../PipingCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -20,6 +20,7 @@ // All rights reserved. using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -102,243 +103,70 @@ mocks.VerifyAll(); } - [Test] - public void Equals_ToItself_ReturnTrue() + [TestFixture] + private class PipingCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new PipingFailureMechanism(); - var context = new PipingCalculationGroupContext(calculationGroup, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly IEnumerable surfaceLines = new PipingSurfaceLine[0]; + private static readonly IEnumerable stochasticSoilModels = new PipingStochasticSoilModel[0]; + private static readonly PipingFailureMechanism failureMechanism = new PipingFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(context); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsTrue(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override PipingCalculationGroupContext CreateObject() + { + return new PipingCalculationGroupContext(calculationGroup, + parent, + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedPipingCalculationGroupContext CreateDerivedObject() + { + return new DerivedPipingCalculationGroupContext(calculationGroup, + parent, + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new PipingFailureMechanism(); - var context = new PipingCalculationGroupContext(calculationGroup, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new PipingCalculationGroupContext(new CalculationGroup(), + parent, + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new PipingCalculationGroupContext(calculationGroup, + new CalculationGroup(), + surfaceLines, + stochasticSoilModels, + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToDerivedObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new PipingFailureMechanism(); - var surfaceLines = new PipingSurfaceLine[0]; - var soilModels = new PipingStochasticSoilModel[0]; - var context = new PipingCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedPipingCalculationGroupContext(calculationGroup, - parent, - surfaceLines, - soilModels, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new PipingFailureMechanism(); - var context1 = new PipingCalculationGroupContext(calculationGroup1, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - var context2 = new PipingCalculationGroupContext(calculationGroup2, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new PipingFailureMechanism(); - var context1 = new PipingCalculationGroupContext(calculationGroup, - parent1, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - var context2 = new PipingCalculationGroupContext(calculationGroup, - parent2, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new PipingFailureMechanism(); - var context1 = new PipingCalculationGroupContext(calculationGroup, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - var context2 = new PipingCalculationGroupContext(calculationGroup, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new PipingFailureMechanism(); - var context1 = new PipingCalculationGroupContext(calculationGroup, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - var context2 = new PipingCalculationGroupContext(calculationGroup, - parent, - new PipingSurfaceLine[0], - new PipingStochasticSoilModel[0], - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedPipingCalculationGroupContext : PipingCalculationGroupContext { public DerivedPipingCalculationGroupContext(CalculationGroup calculationGroup, Index: Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Forms.Test/PresentationObjects/StabilityPointStructuresCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Forms.Test/PresentationObjects/StabilityPointStructuresCalculationGroupContextTest.cs (.../StabilityPointStructuresCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Forms.Test/PresentationObjects/StabilityPointStructuresCalculationGroupContextTest.cs (.../StabilityPointStructuresCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -62,242 +64,61 @@ mockRepository.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnFalse() + [TestFixture] + private class StabilityPointStructuresCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly StabilityPointStructuresFailureMechanism failureMechanism = new StabilityPointStructuresFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(null); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsFalse(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override StabilityPointStructuresCalculationGroupContext CreateObject() + { + return new StabilityPointStructuresCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedStabilityPointStructuresCalculationGroupContext CreateDerivedObject() + { + return new DerivedStabilityPointStructuresCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new StabilityPointStructuresCalculationGroupContext(new CalculationGroup(), + parent, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new StabilityPointStructuresCalculationGroupContext(calculationGroup, + new CalculationGroup(), + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToDerivedObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedStabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context1 = new StabilityPointStructuresCalculationGroupContext(calculationGroup1, - parent, - failureMechanism, - assessmentSection); - var context2 = new StabilityPointStructuresCalculationGroupContext(calculationGroup2, - parent, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context1 = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent1, - failureMechanism, - assessmentSection); - var context2 = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent2, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context1 = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityPointStructuresFailureMechanism(); - var context1 = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new StabilityPointStructuresCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedStabilityPointStructuresCalculationGroupContext : StabilityPointStructuresCalculationGroupContext { public DerivedStabilityPointStructuresCalculationGroupContext(CalculationGroup calculationsGroup, Index: Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Forms.Test/PresentationObjects/StabilityStoneCoverWaveConditionsCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Forms.Test/PresentationObjects/StabilityStoneCoverWaveConditionsCalculationGroupContextTest.cs (.../StabilityStoneCoverWaveConditionsCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/StabilityStoneCover/test/Ringtoets.StabilityStoneCover.Forms.Test/PresentationObjects/StabilityStoneCoverWaveConditionsCalculationGroupContextTest.cs (.../StabilityStoneCoverWaveConditionsCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -60,242 +62,61 @@ mocks.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnFalse() + [TestFixture] + private class StabilityStoneCoverWaveConditionsCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly StabilityStoneCoverFailureMechanism failureMechanism = new StabilityStoneCoverFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(null); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsFalse(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override StabilityStoneCoverWaveConditionsCalculationGroupContext CreateObject() + { + return new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedStabilityStoneCoverWaveConditionsCalculationGroupContext CreateDerivedObject() + { + return new DerivedStabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new StabilityStoneCoverWaveConditionsCalculationGroupContext(new CalculationGroup(), + parent, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, + new CalculationGroup(), + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToDerivedObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedStabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context1 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup1, - parent, - failureMechanism, - assessmentSection); - var context2 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup2, - parent, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context1 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent1, - failureMechanism, - assessmentSection); - var context2 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent2, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context1 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new StabilityStoneCoverFailureMechanism(); - var context1 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new StabilityStoneCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedStabilityStoneCoverWaveConditionsCalculationGroupContext : StabilityStoneCoverWaveConditionsCalculationGroupContext { public DerivedStabilityStoneCoverWaveConditionsCalculationGroupContext(CalculationGroup calculationGroup, Index: Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Forms.Test/PresentationObjects/WaveImpactAsphaltCoverCalculationGroupContextTest.cs =================================================================== diff -u -r1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2 -r1cb6a367a7045fcde284b83e695e7ce5a7ea68ab --- Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Forms.Test/PresentationObjects/WaveImpactAsphaltCoverCalculationGroupContextTest.cs (.../WaveImpactAsphaltCoverCalculationGroupContextTest.cs) (revision 1135c8dff2d97eb3b8f17ada1f96bc068ac06bc2) +++ Ringtoets/WaveImpactAsphaltCover/test/Ringtoets.WaveImpactAsphaltCover.Forms.Test/PresentationObjects/WaveImpactAsphaltCoverCalculationGroupContextTest.cs (.../WaveImpactAsphaltCoverCalculationGroupContextTest.cs) (revision 1cb6a367a7045fcde284b83e695e7ce5a7ea68ab) @@ -19,6 +19,8 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System.Collections.Generic; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.AssessmentSection; @@ -61,242 +63,61 @@ mockRepository.VerifyAll(); } - [Test] - public void Equals_ToNull_ReturnFalse() + [TestFixture] + private class WaveImpactAsphaltCoverWaveConditionsCalculationGroupContextEqualsTest + : EqualsGuidelinesTestFixture { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + private static readonly MockRepository mocks = new MockRepository(); - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); + private static readonly IAssessmentSection assessmentSection = mocks.Stub(); + private static readonly WaveImpactAsphaltCoverFailureMechanism failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); + private static readonly CalculationGroup parent = new CalculationGroup(); + private static readonly CalculationGroup calculationGroup = new CalculationGroup(); - // Call - bool isEqual = context.Equals(null); + [SetUp] + public void SetUp() + { + mocks.ReplayAll(); + } - // Assert - Assert.IsFalse(isEqual); + [TearDown] + public void TearDown() + { + mocks.VerifyAll(); + } - mocks.VerifyAll(); - } + protected override WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext CreateObject() + { + return new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - [Test] - public void Equals_ToItself_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); + protected override DerivedWaveImpactAsphaltCoverWaveConditionsCalculationGroupContext CreateDerivedObject() + { + return new DerivedWaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, + parent, + failureMechanism, + assessmentSection); + } - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(context); - - // Assert - Assert.IsTrue(isEqual); - - mocks.VerifyAll(); + private static IEnumerable GetUnequalTestCases() + { + yield return new TestCaseData(new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(new CalculationGroup(), + parent, + failureMechanism, + assessmentSection)) + .SetName("Wrapped Calculation Group"); + yield return new TestCaseData(new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, + new CalculationGroup(), + failureMechanism, + assessmentSection)) + .SetName("Parent"); + } } - [Test] - public void Equals_ToOtherWithDifferentType_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(new object()); - - // Assert - Assert.IsFalse(isEqual); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToDerivedObject_ReturnsFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var derivedContext = new DerivedWaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual = context.Equals(derivedContext); - - // Assert - Assert.IsFalse(isEqual); - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentWrappedData_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup1 = new CalculationGroup(); - var calculationGroup2 = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context1 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup1, - parent, - failureMechanism, - assessmentSection); - var context2 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup2, - parent, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(calculationGroup1.Equals(calculationGroup2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithDifferentParent_ReturnFalse() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent1 = new CalculationGroup(); - var parent2 = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context1 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent1, - failureMechanism, - assessmentSection); - var context2 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent2, - failureMechanism, - assessmentSection); - - // Precondition - Assert.IsFalse(parent1.Equals(parent2)); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsFalse(isEqual1); - Assert.IsFalse(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void Equals_ToOtherWithSameWrappedDataAndParent_ReturnTrue() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context1 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - - // Call - bool isEqual1 = context1.Equals(context2); - bool isEqual2 = context2.Equals(context1); - - // Assert - Assert.IsTrue(isEqual1); - Assert.IsTrue(isEqual2); - - mocks.VerifyAll(); - } - - [Test] - public void GetHashCode_EqualObjects_ReturnSameHashCode() - { - // Setup - var mocks = new MockRepository(); - var assessmentSection = mocks.Stub(); - mocks.ReplayAll(); - - var calculationGroup = new CalculationGroup(); - var parent = new CalculationGroup(); - var failureMechanism = new WaveImpactAsphaltCoverFailureMechanism(); - var context1 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - var context2 = new WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(calculationGroup, - parent, - failureMechanism, - assessmentSection); - // Precondition - Assert.AreEqual(context1, context2); - - // Call - int hashCode1 = context1.GetHashCode(); - int hashCode2 = context2.GetHashCode(); - - // Assert - Assert.AreEqual(hashCode1, hashCode2); - - mocks.VerifyAll(); - } - private class DerivedWaveImpactAsphaltCoverWaveConditionsCalculationGroupContext : WaveImpactAsphaltCoverWaveConditionsCalculationGroupContext { public DerivedWaveImpactAsphaltCoverWaveConditionsCalculationGroupContext(CalculationGroup calculationsGroup,