Index: Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Data.Test/StabilityPointStructuresFailureMechanismSectionResultTest.cs =================================================================== diff -u -r3127db01c67e5b95c17a3acb25705e42acdb4c50 -re5e23e07a418655a45382dd5cc01d537fc17dfa4 --- Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Data.Test/StabilityPointStructuresFailureMechanismSectionResultTest.cs (.../StabilityPointStructuresFailureMechanismSectionResultTest.cs) (revision 3127db01c67e5b95c17a3acb25705e42acdb4c50) +++ Ringtoets/StabilityPointStructures/test/Ringtoets.StabilityPointStructures.Data.Test/StabilityPointStructuresFailureMechanismSectionResultTest.cs (.../StabilityPointStructuresFailureMechanismSectionResultTest.cs) (revision e5e23e07a418655a45382dd5cc01d537fc17dfa4) @@ -48,6 +48,8 @@ Assert.AreEqual(TailorMadeAssessmentProbabilityCalculationResultType.None, sectionResult.TailorMadeAssessmentResult); Assert.IsNaN(sectionResult.TailorMadeAssessmentProbability); Assert.AreSame(section, sectionResult.Section); + Assert.IsFalse(sectionResult.UseManualAssemblyProbability); + Assert.IsNaN(sectionResult.ManualAssemblyProbability); } [Test] @@ -87,5 +89,46 @@ // Assert Assert.AreEqual(validValue, sectionResult.TailorMadeAssessmentProbability); } + + [Test] + [SetCulture("nl-NL")] + [TestCase(-20)] + [TestCase(-1e-6)] + [TestCase(1 + 1e-6)] + [TestCase(12)] + public void ManualAssemblyProbability_InvalidValue_ThrowsArgumentOutOfRangeException(double newValue) + { + // Setup + FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection(); + var result = new StabilityPointStructuresFailureMechanismSectionResult(section); + + // Call + TestDelegate test = () => result.ManualAssemblyProbability = newValue; + + // Assert + string message = Assert.Throws(test).Message; + const string expectedMessage = "De waarde voor de faalkans moet in het bereik [0,0, 1,0] liggen."; + Assert.AreEqual(expectedMessage, message); + } + + [Test] + [TestCase(0)] + [TestCase(1e-6)] + [TestCase(0.5)] + [TestCase(1 - 1e-6)] + [TestCase(1)] + [TestCase(double.NaN)] + public void ManualAssemblyProbability_ValidValue_NewValueSet(double newValue) + { + // Setup + FailureMechanismSection section = FailureMechanismSectionTestFactory.CreateFailureMechanismSection(); + var result = new StabilityPointStructuresFailureMechanismSectionResult(section); + + // Call + result.ManualAssemblyProbability = newValue; + + // Assert + Assert.AreEqual(newValue, result.ManualAssemblyProbability); + } } } \ No newline at end of file