Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/PersistenceRegistryTest.cs =================================================================== diff -u -r11f0867b39150ae5fac83dc178a89fee46d27611 -r0540405a7dbabf85dc02db30c79c3c58b0faeea6 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/PersistenceRegistryTest.cs (.../PersistenceRegistryTest.cs) (revision 11f0867b39150ae5fac83dc178a89fee46d27611) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/PersistenceRegistryTest.cs (.../PersistenceRegistryTest.cs) (revision 0540405a7dbabf85dc02db30c79c3c58b0faeea6) @@ -425,11 +425,9 @@ public void Contains_OtherDikeProfileAdded_ReturnsFalse() { // Setup - var dikeProfile = new DikeProfile(new Point2D(0, 0), new RoughnessPoint[0], new Point2D[0], - null, new DikeProfile.ConstructionProperties()); + var dikeProfile = CreateDikeProfile(); + var otherDikeProfile = CreateDikeProfile(); - var otherDikeProfile = new DikeProfile(new Point2D(1, 1), new RoughnessPoint[0], new Point2D[0], - null, new DikeProfile.ConstructionProperties()); var registry = new PersistenceRegistry(); registry.Register(new DikeProfileEntity(), otherDikeProfile); @@ -444,8 +442,7 @@ public void Contains_NoDikeProfileAdded_ReturnsFalse() { // Setup - var dikeProfile = new DikeProfile(new Point2D(0, 0), new RoughnessPoint[0], new Point2D[0], - null, new DikeProfile.ConstructionProperties()); + var dikeProfile = CreateDikeProfile(); var registry = new PersistenceRegistry(); @@ -457,6 +454,67 @@ } [Test] + public void Contains_WithoutForeshoreProfile_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate call = () => registry.Contains((ForeshoreProfile)null); + + // Assert + string paramName = Assert.Throws(call).ParamName; + Assert.AreEqual("model", paramName); + } + + [Test] + public void Contains_ForeshoreProfileAdded_ReturnsTrue() + { + // Setup + var foreshoreProfile = new TestForeshoreProfile(); + var registry = new PersistenceRegistry(); + registry.Register(new ForeshoreProfileEntity(), foreshoreProfile); + + // Call + bool result = registry.Contains(foreshoreProfile); + + // Assert + Assert.IsTrue(result); + } + + [Test] + public void Contains_OtherForeshoreProfileAdded_ReturnsFalse() + { + // Setup + var foreshoreProfile = new TestForeshoreProfile(); + var otherForeshoreProfile = new TestForeshoreProfile(); + + var registry = new PersistenceRegistry(); + registry.Register(new ForeshoreProfileEntity(), otherForeshoreProfile); + + // Call + bool result = registry.Contains(foreshoreProfile); + + // Assert + Assert.IsFalse(result); + } + + [Test] + public void Contains_NoForeshoreProfileAdded_ReturnsFalse() + { + // Setup + var foreshoreProfile = new TestForeshoreProfile(); + + var registry = new PersistenceRegistry(); + + // Call + bool result = registry.Contains(foreshoreProfile); + + // Assert + Assert.IsFalse(result); + } + + [Test] public void Contains_WithoutGrassCoverErosionInwardsCalculation_ThrowsArgumentNullException() { // Setup @@ -893,8 +951,7 @@ public void Get_NoDikeProfileAdded_ThrowsInvalidOperationException() { // Setup - var dikeProfile = new DikeProfile(new Point2D(0, 0), new RoughnessPoint[0], new Point2D[0], - null, new DikeProfile.ConstructionProperties()); + var dikeProfile = CreateDikeProfile(); var registry = new PersistenceRegistry(); // Call @@ -908,10 +965,8 @@ public void Get_OtherDikeProfileAdded_ThrowsInvalidOperationException() { // Setup - var dikeProfile = new DikeProfile(new Point2D(0, 0), new RoughnessPoint[0], new Point2D[0], - null, new DikeProfile.ConstructionProperties()); - var registeredDikeProfile = new DikeProfile(new Point2D(1, 1), new RoughnessPoint[0], new Point2D[0], - null, new DikeProfile.ConstructionProperties()); + var dikeProfile = CreateDikeProfile(); + var registeredDikeProfile = CreateDikeProfile(); var registeredEntity = new DikeProfileEntity(); var registry = new PersistenceRegistry(); @@ -928,8 +983,7 @@ public void Get_DikeProfileAdded_ReturnsEntity() { // Setup - var dikeProfile = new DikeProfile(new Point2D(0, 0), new RoughnessPoint[0], new Point2D[0], - null, new DikeProfile.ConstructionProperties()); + var dikeProfile = CreateDikeProfile(); var registeredEntity = new DikeProfileEntity(); var registry = new PersistenceRegistry(); @@ -943,6 +997,69 @@ } [Test] + public void Get_WithoutForeshoreProfile_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate call = () => registry.Get((ForeshoreProfile) null); + + // Assert + string paramName = Assert.Throws(call).ParamName; + Assert.AreEqual("model", paramName); + } + + [Test] + public void Get_NoForeshoreProfileAdded_ThrowsInvalidOperationException() + { + // Setup + var foreshoreProfile = new TestForeshoreProfile(); + var registry = new PersistenceRegistry(); + + // Call + TestDelegate call = () => registry.Get(foreshoreProfile); + + // Assert + Assert.Throws(call); + } + + [Test] + public void Get_OtherForeshoreProfileAdded_ThrowsInvalidOperationException() + { + // Setup + var foreshoreProfile = new TestForeshoreProfile(); + var registeredForeshoreProfile = new TestForeshoreProfile(); + var registeredEntity = new ForeshoreProfileEntity(); + + var registry = new PersistenceRegistry(); + registry.Register(registeredEntity, registeredForeshoreProfile); + + // Call + TestDelegate call = () => registry.Get(foreshoreProfile); + + // Assert + Assert.Throws(call); + } + + [Test] + public void Get_ForeshoreProfileAdded_ReturnsEntity() + { + // Setup + var foreshoreProfile = new TestForeshoreProfile(); + var registeredEntity = new ForeshoreProfileEntity(); + + var registry = new PersistenceRegistry(); + registry.Register(registeredEntity, foreshoreProfile); + + // Call + ForeshoreProfileEntity retrievedEntity = registry.Get(foreshoreProfile); + + // Assert + Assert.AreSame(registeredEntity, retrievedEntity); + } + + [Test] public void Get_WithoutGrassCoverErosionInwardsCalculation_ThrowsArgumentNullException() { // Setup @@ -1066,6 +1183,34 @@ } [Test] + public void Register_WithNullForeshoreProfile_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate test = () => registry.Register(new ForeshoreProfileEntity(), null); + + // Assert + var paramName = Assert.Throws(test).ParamName; + Assert.AreEqual("model", paramName); + } + + [Test] + public void Register_WithNullForeshoreProfileEntity_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate test = () => registry.Register(null, new TestForeshoreProfile()); + + // Assert + var paramName = Assert.Throws(test).ParamName; + Assert.AreEqual("entity", paramName); + } + + [Test] public void Register_WithNullGrassCoverErosionInwardsCalculation_ThrowsArgumentNullException() { // Setup