Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/PersistenceRegistryTest.cs =================================================================== diff -u -r21b2f912e42c334efafdf907ad6f0c14b84187be -r25cb0404c9026690062e1a17b1ef5e9ecdb176f6 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/PersistenceRegistryTest.cs (.../PersistenceRegistryTest.cs) (revision 21b2f912e42c334efafdf907ad6f0c14b84187be) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/PersistenceRegistryTest.cs (.../PersistenceRegistryTest.cs) (revision 25cb0404c9026690062e1a17b1ef5e9ecdb176f6) @@ -886,6 +886,66 @@ Assert.IsFalse(result); } + [Test] + public void Contains_WithoutStabilityPointStructuresCalculation_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate call = () => registry.Contains((StructuresCalculation) null); + + // Assert + string paramName = Assert.Throws(call).ParamName; + Assert.AreEqual("model", paramName); + } + + [Test] + public void Contains_StabilityPointStructuresCalculationAdded_ReturnsTrue() + { + // Setup + var calculation = new StructuresCalculation(); + var registry = new PersistenceRegistry(); + registry.Register(new StabilityPointStructuresCalculationEntity(), calculation); + + // Call + bool result = registry.Contains(calculation); + + // Assert + Assert.IsTrue(result); + } + + [Test] + public void Contains_OtherStabilityPointStructuresCalculationAdded_ReturnsFalse() + { + // Setup + var calculation = new StructuresCalculation(); + + var otherCalculation = new StructuresCalculation(); + var registry = new PersistenceRegistry(); + registry.Register(new StabilityPointStructuresCalculationEntity(), otherCalculation); + + // Call + bool result = registry.Contains(calculation); + + // Assert + Assert.IsFalse(result); + } + + [Test] + public void Contains_NoStabilityPointStructuresCalculationAdded_ReturnsFalse() + { + // Setup + var calculation = new StructuresCalculation(); + var registry = new PersistenceRegistry(); + + // Call + bool result = registry.Contains(calculation); + + // Assert + Assert.IsFalse(result); + } + #endregion #region Get methods @@ -1685,6 +1745,69 @@ Assert.AreSame(registeredEntity, retrievedEntity); } + [Test] + public void Get_WithoutStabilityPointStructuresCalculation_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate call = () => registry.Get((StructuresCalculation) null); + + // Assert + string paramName = Assert.Throws(call).ParamName; + Assert.AreEqual("model", paramName); + } + + [Test] + public void Get_NoStabilityPointStructuresCalculationAdded_ThrowsInvalidOperationException() + { + // Setup + var calculation = new StructuresCalculation(); + var registry = new PersistenceRegistry(); + + // Call + TestDelegate call = () => registry.Get(calculation); + + // Assert + Assert.Throws(call); + } + + [Test] + public void Get_OtherStabilityPointStructuresCalculationAdded_ThrowsInvalidOperationException() + { + // Setup + var calculation = new StructuresCalculation(); + var registeredCalculation = new StructuresCalculation(); + var registeredEntity = new StabilityPointStructuresCalculationEntity(); + + var registry = new PersistenceRegistry(); + registry.Register(registeredEntity, registeredCalculation); + + // Call + TestDelegate call = () => registry.Get(calculation); + + // Assert + Assert.Throws(call); + } + + [Test] + public void Get_StabilityPointStructuresCalculationAdded_ReturnsEntity() + { + // Setup + var calculation = new StructuresCalculation(); + var registeredEntity = new StabilityPointStructuresCalculationEntity(); + + var registry = new PersistenceRegistry(); + registry.Register(registeredEntity, calculation); + + // Call + StabilityPointStructuresCalculationEntity retrievedEntity = registry.Get(calculation); + + // Assert + Assert.AreSame(registeredEntity, retrievedEntity); + } + #endregion #region Register methods @@ -2028,6 +2151,34 @@ Assert.AreEqual("model", paramName); } + [Test] + public void Register_WithNullStabilityPointStructuresCalculationEntity_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate test = () => registry.Register(null, new TestStabilityPointStructuresCalculation()); + + // Assert + string paramName = Assert.Throws(test).ParamName; + Assert.AreEqual("entity", paramName); + } + + [Test] + public void Register_WithNullStabilityPointStructuresCalculation_ThrowsArgumentNullException() + { + // Setup + var registry = new PersistenceRegistry(); + + // Call + TestDelegate test = () => registry.Register(new StabilityPointStructuresCalculationEntity(), null); + + // Assert + string paramName = Assert.Throws(test).ParamName; + Assert.AreEqual("model", paramName); + } + #endregion } } \ No newline at end of file