Index: Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.Test/Creators/FailureMechanismSectionAssemblyCreatorTest.cs =================================================================== diff -u -r66d6f7a3b583d9bca7b5a9c9697f8f4f332cc5c9 -rf2789d796f6c79f3b0193e5120602920368ec6a6 --- Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.Test/Creators/FailureMechanismSectionAssemblyCreatorTest.cs (.../FailureMechanismSectionAssemblyCreatorTest.cs) (revision 66d6f7a3b583d9bca7b5a9c9697f8f4f332cc5c9) +++ Ringtoets/AssemblyTool/test/Ringtoets.AssemblyTool.KernelWrapper.Test/Creators/FailureMechanismSectionAssemblyCreatorTest.cs (.../FailureMechanismSectionAssemblyCreatorTest.cs) (revision f2789d796f6c79f3b0193e5120602920368ec6a6) @@ -47,7 +47,7 @@ public void Create_InvalidGroup_ThrowsInvalidEnumArgumentException() { // Setup - var result = new FmSectionAssemblyDirectResult((EFmSectionCategory) 99, new Random(39).NextDouble()); + var result = new FmSectionAssemblyDirectResult((EFmSectionCategory)99); // Call TestDelegate test = () => FailureMechanismSectionAssemblyCreator.Create(result); @@ -58,6 +58,46 @@ } [Test] + public void Create_ValidResult_ReturnExpectedFailureMechanismSectionAssembly() + { + // Setup + var group = new Random(39).NextEnumValue(); + + // Call + FailureMechanismSectionAssembly assembly = FailureMechanismSectionAssemblyCreator.Create( + new FmSectionAssemblyDirectResult(group)); + + // Assert + Assert.AreEqual(FailureMechanismSectionAssemblyCreator.CreateFailureMechanismSectionAssemblyCategoryGroup(group), assembly.Group); + Assert.IsNaN(assembly.Probability); + } + + [Test] + public void CreateWithFmSectionAssemblyDirectResultWithProbability_ResultNull_ThrowsArgumentNullException() + { + // Call + TestDelegate call = () => FailureMechanismSectionAssemblyCreator.Create(null); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("result", exception.ParamName); + } + + [Test] + public void CreateWithFmSectionAssemblyDirectResultWithProbability_InvalidGroup_ThrowsInvalidEnumArgumentException() + { + // Setup + var result = new FmSectionAssemblyDirectResultWithProbability((EFmSectionCategory) 99, new Random(39).NextDouble()); + + // Call + TestDelegate test = () => FailureMechanismSectionAssemblyCreator.Create(result); + + // Assert + const string expectedMessage = "The value of argument 'category' (99) is invalid for Enum type 'EFmSectionCategory'."; + TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, expectedMessage); + } + + [Test] [TestCase(EFmSectionCategory.Gr, FailureMechanismSectionAssemblyCategoryGroup.None)] [TestCase(EFmSectionCategory.NotApplicable, FailureMechanismSectionAssemblyCategoryGroup.NotApplicable)] [TestCase(EFmSectionCategory.Iv, FailureMechanismSectionAssemblyCategoryGroup.Iv)] @@ -67,14 +107,15 @@ [TestCase(EFmSectionCategory.Vv, FailureMechanismSectionAssemblyCategoryGroup.Vv)] [TestCase(EFmSectionCategory.VIv, FailureMechanismSectionAssemblyCategoryGroup.VIv)] [TestCase(EFmSectionCategory.VIIv, FailureMechanismSectionAssemblyCategoryGroup.VIIv)] - public void Create_ValidResult_ReturnFailureMechanismSectionAssembly(EFmSectionCategory originalGroup, - FailureMechanismSectionAssemblyCategoryGroup expectedGroup) + public void CreateWithFmSectionAssemblyDirectResultWithProbability_ValidResult_ReturnFailureMechanismSectionAssembly( + EFmSectionCategory originalGroup, + FailureMechanismSectionAssemblyCategoryGroup expectedGroup) { // Setup var random = new Random(39); double probability = random.NextDouble(); - var result = new FmSectionAssemblyDirectResult(originalGroup, probability); + var result = new FmSectionAssemblyDirectResultWithProbability(originalGroup, probability); // Call FailureMechanismSectionAssembly assembly = FailureMechanismSectionAssemblyCreator.Create(result); @@ -85,21 +126,6 @@ } [Test] - public void Create_ResultProbabilityNull_ReturnExpectedFailureMechanismSectionAssembly() - { - // Setup - var group = new Random(39).NextEnumValue(); - - // Call - FailureMechanismSectionAssembly assembly = FailureMechanismSectionAssemblyCreator.Create( - new FmSectionAssemblyDirectResult(group)); - - // Assert - Assert.AreEqual(FailureMechanismSectionAssemblyCreator.CreateFailureMechanismSectionAssemblyCategoryGroup(group), assembly.Group); - Assert.IsNaN(assembly.Probability); - } - - [Test] public void CreateFailureMechanismSectionAssemblyCategoryGroup_InvalidGroup_ThrowsInvalidEnumArgumentException() { // Call