Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismTest.cs =================================================================== diff -u -r41fac7fff0a505c08945108d795dcb877f10b816 -raaf4928016ae31ac440a8323c0928c6a26f59598 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismTest.cs (.../GrassCoverErosionInwardsFailureMechanismTest.cs) (revision 41fac7fff0a505c08945108d795dcb877f10b816) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Data.Test/GrassCoverErosionInwardsFailureMechanismTest.cs (.../GrassCoverErosionInwardsFailureMechanismTest.cs) (revision aaf4928016ae31ac440a8323c0928c6a26f59598) @@ -19,9 +19,9 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. -using Core.Common.Base; +using System.Linq; +using Core.Common.Base.Geometry; using NUnit.Framework; -using Rhino.Mocks; using Ringtoets.Common.Data.Calculation; using Ringtoets.Common.Data.FailureMechanism; using Ringtoets.GrassCoverErosionInwards.Data.Properties; @@ -31,122 +31,66 @@ [TestFixture] public class GrassCoverErosionInwardsFailureMechanismTest { - private MockRepository mockRepository; - - [SetUp] - public void SetUp() - { - mockRepository = new MockRepository(); - } - [Test] public void DefaultConstructor_ExpectedValues() { // call - var grassCoverErosionInwardsFailureMechanism = new GrassCoverErosionInwardsFailureMechanism(); + var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); // assert - Assert.IsInstanceOf(grassCoverErosionInwardsFailureMechanism); - Assert.IsInstanceOf(grassCoverErosionInwardsFailureMechanism); - Assert.AreEqual(Resources.GrassCoverErosionInwardsFailureMechanism_DisplayName, grassCoverErosionInwardsFailureMechanism.Name); - Assert.AreEqual(Resources.GrassCoverErosionInwardsFailureMechanism_DisplayCode, grassCoverErosionInwardsFailureMechanism.Code); - CollectionAssert.IsEmpty(grassCoverErosionInwardsFailureMechanism.Calculations); - Assert.IsInstanceOf(grassCoverErosionInwardsFailureMechanism.GeneralInput); - Assert.IsInstanceOf(grassCoverErosionInwardsFailureMechanism.NormProbabilityInput); - Assert.AreEqual("Berekeningen", grassCoverErosionInwardsFailureMechanism.CalculationsGroup.Name); - Assert.IsEmpty(grassCoverErosionInwardsFailureMechanism.CalculationsGroup.Children); + Assert.IsInstanceOf(failureMechanism); + Assert.IsInstanceOf(failureMechanism); + Assert.AreEqual(Resources.GrassCoverErosionInwardsFailureMechanism_DisplayName, failureMechanism.Name); + Assert.AreEqual(Resources.GrassCoverErosionInwardsFailureMechanism_DisplayCode, failureMechanism.Code); + CollectionAssert.IsEmpty(failureMechanism.Calculations); + Assert.IsInstanceOf(failureMechanism.GeneralInput); + Assert.IsInstanceOf(failureMechanism.NormProbabilityInput); + Assert.AreEqual("Berekeningen", failureMechanism.CalculationsGroup.Name); + Assert.IsEmpty(failureMechanism.CalculationsGroup.Children); } [Test] - public void Notify_SingleListenerAttached_ListenerIsNotified() + public void AddSection_WithSection_AddedGrassCoverErosionInwardsFailureMechanismSectionResult() { // Setup - var observer = mockRepository.StrictMock(); - observer.Expect(o => o.UpdateObserver()); - mockRepository.ReplayAll(); + var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var grassCoverErosionInwardsFailureMechanism = new GrassCoverErosionInwardsFailureMechanism(); + // Call + failureMechanism.AddSection(new FailureMechanismSection("", new[] + { + new Point2D(2, 1) + })); - grassCoverErosionInwardsFailureMechanism.Attach(observer); - - // Call & Assert - grassCoverErosionInwardsFailureMechanism.NotifyObservers(); - mockRepository.VerifyAll(); + // Assert + Assert.AreEqual(1, failureMechanism.SectionResults.Count()); + Assert.IsInstanceOf(failureMechanism.SectionResults.ElementAt(0)); } [Test] - public void Notify_SingleListenerAttachedAndDeattached_ListenerIsNotNotified() + public void ClearAllSections_WithSectionsAndSectionResults_SectionsAndSectionResultsCleared() { // Setup - var observer = mockRepository.StrictMock(); - observer.Expect(o => o.UpdateObserver()).Repeat.Never(); - mockRepository.ReplayAll(); + var failureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - var grassCoverErosionInwardsFailureMechanism = new GrassCoverErosionInwardsFailureMechanism(); + failureMechanism.AddSection(new FailureMechanismSection("", new[] + { + new Point2D(2, 1) + })); + failureMechanism.AddSection(new FailureMechanismSection("", new[] + { + new Point2D(2, 1) + })); - grassCoverErosionInwardsFailureMechanism.Attach(observer); - grassCoverErosionInwardsFailureMechanism.Detach(observer); + // Precondition + Assert.AreEqual(2, failureMechanism.Sections.Count()); + Assert.AreEqual(2, failureMechanism.SectionResults.Count()); - // Call & Assert - grassCoverErosionInwardsFailureMechanism.NotifyObservers(); - mockRepository.VerifyAll(); - } + // Call + failureMechanism.ClearAllSections(); - [Test] - public void Notify_TwoListenersAttached_BothAreNotified() - { - // Setup - var observerA = mockRepository.StrictMock(); - observerA.Expect(o => o.UpdateObserver()); - - var observerB = mockRepository.StrictMock(); - observerB.Expect(o => o.UpdateObserver()); - mockRepository.ReplayAll(); - - var grassCoverErosionInwardsFailureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - - grassCoverErosionInwardsFailureMechanism.Attach(observerA); - grassCoverErosionInwardsFailureMechanism.Attach(observerB); - - // Call & Assert - grassCoverErosionInwardsFailureMechanism.NotifyObservers(); - mockRepository.VerifyAll(); + // Assert + Assert.AreEqual(0, failureMechanism.Sections.Count()); + Assert.AreEqual(0, failureMechanism.SectionResults.Count()); } - - [Test] - public void Notify_TwoListenersAttachedOneDetached_InvokedOnce() - { - // Setup - var observerA = mockRepository.StrictMock(); - observerA.Expect(o => o.UpdateObserver()).Repeat.Never(); - - var observerB = mockRepository.StrictMock(); - observerB.Expect(o => o.UpdateObserver()); - mockRepository.ReplayAll(); - - var grassCoverErosionInwardsFailureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - - grassCoverErosionInwardsFailureMechanism.Attach(observerA); - grassCoverErosionInwardsFailureMechanism.Attach(observerB); - grassCoverErosionInwardsFailureMechanism.Detach(observerA); - - // Call & Assert - grassCoverErosionInwardsFailureMechanism.NotifyObservers(); - mockRepository.VerifyAll(); - } - - [Test] - public void Detach_DetachNonAttachedObserver_DoesNotThrowException() - { - // Setup - var observer = mockRepository.StrictMock(); - mockRepository.ReplayAll(); - - var grassCoverErosionInwardsFailureMechanism = new GrassCoverErosionInwardsFailureMechanism(); - - // Call & Assert - grassCoverErosionInwardsFailureMechanism.Detach(observer); - mockRepository.VerifyAll(); - } } } \ No newline at end of file