Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Create/StabilityPointStructures/StabilityPointStructuresFailureMechanismSectionResultCreateExtensions.cs
===================================================================
diff -u -r4f8f3ccccf4857781fe92b05d64e54320e6bfdfe -ra72851067e1c8bfd2022b9bbeb805fc147a0ada9
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Create/StabilityPointStructures/StabilityPointStructuresFailureMechanismSectionResultCreateExtensions.cs (.../StabilityPointStructuresFailureMechanismSectionResultCreateExtensions.cs) (revision 4f8f3ccccf4857781fe92b05d64e54320e6bfdfe)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Create/StabilityPointStructures/StabilityPointStructuresFailureMechanismSectionResultCreateExtensions.cs (.../StabilityPointStructuresFailureMechanismSectionResultCreateExtensions.cs) (revision a72851067e1c8bfd2022b9bbeb805fc147a0ada9)
@@ -37,20 +37,29 @@
/// The result to create a database entity for.
/// The object keeping track of create operations.
/// A new .
- /// Thrown when is null.
+ /// Thrown when any parameter is null.
internal static StabilityPointStructuresSectionResultEntity Create(
this StabilityPointStructuresFailureMechanismSectionResult result,
PersistenceRegistry registry)
{
+ if (result == null)
+ {
+ throw new ArgumentNullException(nameof(result));
+ }
+
if (registry == null)
{
throw new ArgumentNullException(nameof(registry));
}
var sectionResultEntity = new StabilityPointStructuresSectionResultEntity
{
- LayerOne = Convert.ToByte(result.AssessmentLayerOne),
- LayerThree = result.TailorMadeAssessmentProbability.ToNaNAsNull()
+ SimpleAssessmentResult = Convert.ToByte(result.SimpleAssessmentResult),
+ DetailedAssessmentResult = Convert.ToByte(result.DetailedAssessmentResult),
+ TailorMadeAssessmentResult = Convert.ToByte(result.TailorMadeAssessmentResult),
+ TailorMadeAssessmentProbability = result.TailorMadeAssessmentProbability.ToNaNAsNull(),
+ UseManualAssemblyProbability = Convert.ToByte(result.UseManualAssemblyProbability),
+ ManualAssemblyProbability = result.ManualAssemblyProbability.ToNaNAsNull()
};
if (result.Calculation != null)
{
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Read/StabilityPointStructures/StabilityPointStructuresSectionResultEntityReadExtensions.cs
===================================================================
diff -u -r4f8f3ccccf4857781fe92b05d64e54320e6bfdfe -ra72851067e1c8bfd2022b9bbeb805fc147a0ada9
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Read/StabilityPointStructures/StabilityPointStructuresSectionResultEntityReadExtensions.cs (.../StabilityPointStructuresSectionResultEntityReadExtensions.cs) (revision 4f8f3ccccf4857781fe92b05d64e54320e6bfdfe)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Read/StabilityPointStructures/StabilityPointStructuresSectionResultEntityReadExtensions.cs (.../StabilityPointStructuresSectionResultEntityReadExtensions.cs) (revision a72851067e1c8bfd2022b9bbeb805fc147a0ada9)
@@ -21,8 +21,7 @@
using System;
using Application.Ringtoets.Storage.DbContext;
-using Core.Common.Base.Data;
-using Ringtoets.Common.Data.FailureMechanism;
+using Ringtoets.Common.Primitives;
using Ringtoets.StabilityPointStructures.Data;
namespace Application.Ringtoets.Storage.Read.StabilityPointStructures
@@ -37,15 +36,20 @@
/// Reads the and use the information to update a
/// .
///
- /// The to create for.
+ /// The
+ /// to update the .
/// The target of the read operation.
/// The object keeping track of read operations.
- /// A new .
/// Thrown when any input parameter is null.
internal static void Read(this StabilityPointStructuresSectionResultEntity entity,
StabilityPointStructuresFailureMechanismSectionResult sectionResult,
ReadConversionCollector collector)
{
+ if (entity == null)
+ {
+ throw new ArgumentNullException(nameof(entity));
+ }
+
if (sectionResult == null)
{
throw new ArgumentNullException(nameof(sectionResult));
@@ -56,8 +60,12 @@
throw new ArgumentNullException(nameof(collector));
}
- sectionResult.AssessmentLayerOne = (AssessmentLayerOneState) entity.LayerOne;
- sectionResult.TailorMadeAssessmentProbability = entity.LayerThree.ToNullAsNaN();
+ sectionResult.SimpleAssessmentResult = (SimpleAssessmentValidityOnlyResultType) entity.SimpleAssessmentResult;
+ sectionResult.DetailedAssessmentResult = (DetailedAssessmentProbabilityOnlyResultType) entity.DetailedAssessmentResult;
+ sectionResult.TailorMadeAssessmentResult = (TailorMadeAssessmentProbabilityCalculationResultType) entity.TailorMadeAssessmentResult;
+ sectionResult.TailorMadeAssessmentProbability = entity.TailorMadeAssessmentProbability.ToNullAsNaN();
+ sectionResult.UseManualAssemblyProbability = Convert.ToBoolean(entity.UseManualAssemblyProbability);
+ sectionResult.ManualAssemblyProbability = entity.ManualAssemblyProbability.ToNullAsNaN();
if (entity.StabilityPointStructuresCalculationEntity != null)
{
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/StabilityPointStructures/StabilityPointStructuresFailureMechanismSectionResultCreateExtensionsTest.cs
===================================================================
diff -u -r4f8f3ccccf4857781fe92b05d64e54320e6bfdfe -ra72851067e1c8bfd2022b9bbeb805fc147a0ada9
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/StabilityPointStructures/StabilityPointStructuresFailureMechanismSectionResultCreateExtensionsTest.cs (.../StabilityPointStructuresFailureMechanismSectionResultCreateExtensionsTest.cs) (revision 4f8f3ccccf4857781fe92b05d64e54320e6bfdfe)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/StabilityPointStructures/StabilityPointStructuresFailureMechanismSectionResultCreateExtensionsTest.cs (.../StabilityPointStructuresFailureMechanismSectionResultCreateExtensionsTest.cs) (revision a72851067e1c8bfd2022b9bbeb805fc147a0ada9)
@@ -24,11 +24,10 @@
using Application.Ringtoets.Storage.Create.StabilityPointStructures;
using Application.Ringtoets.Storage.DbContext;
using Application.Ringtoets.Storage.TestUtil;
-using Core.Common.Base.Data;
using Core.Common.TestUtil;
using NUnit.Framework;
-using Ringtoets.Common.Data.FailureMechanism;
using Ringtoets.Common.Data.Structures;
+using Ringtoets.Common.Primitives;
using Ringtoets.StabilityPointStructures.Data;
namespace Application.Ringtoets.Storage.Test.Create.StabilityPointStructures
@@ -37,6 +36,17 @@
public class StabilityPointStructuresFailureMechanismSectionResultCreateExtensionsTest
{
[Test]
+ public void Create_FailureMechanismSectionResultNull_ThrowsArgumentNullException()
+ {
+ // Call
+ TestDelegate call = () => ((StabilityPointStructuresFailureMechanismSectionResult) null).Create(new PersistenceRegistry());
+
+ // Assert
+ var exception = Assert.Throws(call);
+ Assert.AreEqual("result", exception.ParamName);
+ }
+
+ [Test]
public void Create_WithoutPersistenceRegistry_ThrowsArgumentNullException()
{
// Setup
@@ -50,43 +60,57 @@
}
[Test]
- [Combinatorial]
public void Create_VariousResults_ReturnsEntity()
{
// Setup
var random = new Random(21);
- var assessmentLayerOneResult = random.NextEnumValue();
- RoundedDouble assessmentLayerThreeResult = random.NextRoundedDouble();
+ var simpleAssessmentResult = random.NextEnumValue();
+ var detailedAssessmentResult = random.NextEnumValue();
+ var tailorMadeAssessmentResult = random.NextEnumValue();
+ double tailorMadeAssessmentProbability = random.NextDouble();
+ bool useManualAssessmentProbability = random.NextBoolean();
+ double manualAssessmentProbability = random.NextDouble();
var sectionResult = new StabilityPointStructuresFailureMechanismSectionResult(new TestFailureMechanismSection())
{
- AssessmentLayerOne = assessmentLayerOneResult,
- TailorMadeAssessmentProbability = assessmentLayerThreeResult
+ SimpleAssessmentResult = simpleAssessmentResult,
+ DetailedAssessmentResult = detailedAssessmentResult,
+ TailorMadeAssessmentResult = tailorMadeAssessmentResult,
+ TailorMadeAssessmentProbability = tailorMadeAssessmentProbability,
+ UseManualAssemblyProbability = useManualAssessmentProbability,
+ ManualAssemblyProbability = manualAssessmentProbability
};
// Call
- StabilityPointStructuresSectionResultEntity result = sectionResult.Create(new PersistenceRegistry());
+ StabilityPointStructuresSectionResultEntity entity = sectionResult.Create(new PersistenceRegistry());
// Assert
- Assert.AreEqual(Convert.ToByte(assessmentLayerOneResult), result.LayerOne);
- Assert.AreEqual(assessmentLayerThreeResult, result.LayerThree);
- Assert.IsNull(result.StabilityPointStructuresCalculationEntityId);
+ Assert.AreEqual(Convert.ToByte(simpleAssessmentResult), entity.SimpleAssessmentResult);
+ Assert.AreEqual(Convert.ToByte(detailedAssessmentResult), entity.DetailedAssessmentResult);
+ Assert.AreEqual(Convert.ToByte(tailorMadeAssessmentResult), entity.TailorMadeAssessmentResult);
+ Assert.AreEqual(tailorMadeAssessmentProbability, entity.TailorMadeAssessmentProbability);
+ Assert.AreEqual(Convert.ToByte(useManualAssessmentProbability), entity.UseManualAssemblyProbability);
+ Assert.AreEqual(manualAssessmentProbability, entity.ManualAssemblyProbability);
+
+ Assert.IsNull(entity.StabilityPointStructuresCalculationEntityId);
}
[Test]
- public void Create_WithNaNLevel3Result_ReturnsEntityWithExpectedResults()
+ public void Create_SectionResultWithNaNValues_ReturnsEntityWithExpectedResults()
{
// Setup
var sectionResult = new StabilityPointStructuresFailureMechanismSectionResult(new TestFailureMechanismSection())
{
- TailorMadeAssessmentProbability = double.NaN
+ TailorMadeAssessmentProbability = double.NaN,
+ ManualAssemblyProbability = double.NaN
};
// Call
- StabilityPointStructuresSectionResultEntity result = sectionResult.Create(new PersistenceRegistry());
+ StabilityPointStructuresSectionResultEntity entity = sectionResult.Create(new PersistenceRegistry());
// Assert
- Assert.IsNull(result.LayerThree);
+ Assert.IsNull(entity.TailorMadeAssessmentProbability);
+ Assert.IsNull(entity.ManualAssemblyProbability);
}
[Test]
@@ -100,14 +124,14 @@
};
var registry = new PersistenceRegistry();
- var entity = new StabilityPointStructuresCalculationEntity();
- registry.Register(entity, calculation);
+ var calculationEntity = new StabilityPointStructuresCalculationEntity();
+ registry.Register(calculationEntity, calculation);
// Call
- StabilityPointStructuresSectionResultEntity result = sectionResult.Create(registry);
+ StabilityPointStructuresSectionResultEntity entity = sectionResult.Create(registry);
// Assert
- Assert.AreSame(entity, result.StabilityPointStructuresCalculationEntity);
+ Assert.AreSame(calculationEntity, entity.StabilityPointStructuresCalculationEntity);
}
}
}
\ No newline at end of file
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/StabilityPointStructures/StabilityPointStructuresSectionResultEntityReadExtensionsTest.cs
===================================================================
diff -u -r4f8f3ccccf4857781fe92b05d64e54320e6bfdfe -ra72851067e1c8bfd2022b9bbeb805fc147a0ada9
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/StabilityPointStructures/StabilityPointStructuresSectionResultEntityReadExtensionsTest.cs (.../StabilityPointStructuresSectionResultEntityReadExtensionsTest.cs) (revision 4f8f3ccccf4857781fe92b05d64e54320e6bfdfe)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/StabilityPointStructures/StabilityPointStructuresSectionResultEntityReadExtensionsTest.cs (.../StabilityPointStructuresSectionResultEntityReadExtensionsTest.cs) (revision a72851067e1c8bfd2022b9bbeb805fc147a0ada9)
@@ -26,8 +26,8 @@
using Application.Ringtoets.Storage.TestUtil;
using Core.Common.TestUtil;
using NUnit.Framework;
-using Ringtoets.Common.Data.FailureMechanism;
using Ringtoets.Common.Data.Structures;
+using Ringtoets.Common.Primitives;
using Ringtoets.StabilityPointStructures.Data;
namespace Application.Ringtoets.Storage.Test.Read.StabilityPointStructures
@@ -36,6 +36,19 @@
public class StabilityPointStructuresSectionResultEntityReadExtensionsTest
{
[Test]
+ public void Read_EntityNull_ThrowsArgumentNullException()
+ {
+ // Call
+ TestDelegate call = () => ((StabilityPointStructuresSectionResultEntity) null).Read(
+ new StabilityPointStructuresFailureMechanismSectionResult(new TestFailureMechanismSection()),
+ new ReadConversionCollector());
+
+ // Assert
+ var exception = Assert.Throws(call);
+ Assert.AreEqual("entity", exception.ParamName);
+ }
+
+ [Test]
public void Read_SectionResultIsNull_ThrowArgumentNullException()
{
// Setup
@@ -69,45 +82,52 @@
{
// Setup
var random = new Random(21);
- var layerOne = random.NextEnumValue();
- double layerThree = random.NextDouble();
+ var simpleAssessmentResult = random.NextEnumValue();
+ var detailedAssessmentResult = random.NextEnumValue();
+ var tailorMadeAssessmentResult = random.NextEnumValue();
+ double tailorMadeAssessmentProbability = random.NextDouble();
+ bool useManualAssemblyProbability = random.NextBoolean();
+ double manualAssemblyProbability = random.NextDouble();
var collector = new ReadConversionCollector();
var failureMechanismSectionEntity = new FailureMechanismSectionEntity();
collector.Read(failureMechanismSectionEntity, new TestFailureMechanismSection());
var entity = new StabilityPointStructuresSectionResultEntity
{
- LayerOne = Convert.ToByte(layerOne),
- LayerThree = layerThree,
- FailureMechanismSectionEntity = failureMechanismSectionEntity
+ FailureMechanismSectionEntity = failureMechanismSectionEntity,
+ SimpleAssessmentResult = Convert.ToByte(simpleAssessmentResult),
+ DetailedAssessmentResult = Convert.ToByte(detailedAssessmentResult),
+ TailorMadeAssessmentResult = Convert.ToByte(tailorMadeAssessmentResult),
+ TailorMadeAssessmentProbability = tailorMadeAssessmentProbability,
+ UseManualAssemblyProbability = Convert.ToByte(useManualAssemblyProbability),
+ ManualAssemblyProbability = manualAssemblyProbability
};
var sectionResult = new StabilityPointStructuresFailureMechanismSectionResult(new TestFailureMechanismSection());
// Call
entity.Read(sectionResult, collector);
// Assert
- Assert.AreEqual(layerOne, sectionResult.AssessmentLayerOne);
- Assert.AreEqual(layerThree, sectionResult.TailorMadeAssessmentProbability, 1e-6);
+ Assert.AreEqual(simpleAssessmentResult, sectionResult.SimpleAssessmentResult);
+ Assert.AreEqual(detailedAssessmentResult, sectionResult.DetailedAssessmentResult);
+ Assert.AreEqual(tailorMadeAssessmentResult, sectionResult.TailorMadeAssessmentResult);
+ Assert.AreEqual(tailorMadeAssessmentProbability, sectionResult.TailorMadeAssessmentProbability, 1e-6);
+ Assert.AreEqual(useManualAssemblyProbability, sectionResult.UseManualAssemblyProbability);
+ Assert.AreEqual(manualAssemblyProbability, sectionResult.ManualAssemblyProbability, 1e-6);
Assert.IsNull(sectionResult.Calculation);
}
[Test]
public void Read_EntityWithNullValues_SectionResultWithNaNValues()
{
// Setup
- var random = new Random(21);
- var layerOne = random.NextEnumValue();
-
var collector = new ReadConversionCollector();
var failureMechanismSectionEntity = new FailureMechanismSectionEntity();
collector.Read(failureMechanismSectionEntity, new TestFailureMechanismSection());
var entity = new StabilityPointStructuresSectionResultEntity
{
- LayerOne = Convert.ToByte(layerOne),
- LayerThree = null,
FailureMechanismSectionEntity = failureMechanismSectionEntity
};
var sectionResult = new StabilityPointStructuresFailureMechanismSectionResult(new TestFailureMechanismSection());
@@ -116,8 +136,8 @@
entity.Read(sectionResult, collector);
// Assert
- Assert.AreEqual(layerOne, sectionResult.AssessmentLayerOne);
Assert.IsNaN(sectionResult.TailorMadeAssessmentProbability);
+ Assert.IsNaN(sectionResult.ManualAssemblyProbability);
Assert.IsNull(sectionResult.Calculation);
}