Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HydraulicBoundaryLocationCreateExtensions.cs =================================================================== diff -u -rc0532d07766ecad2566f7cfa4a97a9aeb6e8540c -rb3c727f0765a7658ebdef636b20fcc78abc11ed1 --- Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HydraulicBoundaryLocationCreateExtensions.cs (.../HydraulicBoundaryLocationCreateExtensions.cs) (revision c0532d07766ecad2566f7cfa4a97a9aeb6e8540c) +++ Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HydraulicBoundaryLocationCreateExtensions.cs (.../HydraulicBoundaryLocationCreateExtensions.cs) (revision b3c727f0765a7658ebdef636b20fcc78abc11ed1) @@ -78,7 +78,7 @@ { if (output != null) { - var hydraulicLocationOutputEntity = output.Create(outputType); + var hydraulicLocationOutputEntity = HydraulicBoundaryLocationOutputCreateExtensions.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); entity.HydraulicLocationOutputEntities.Add(hydraulicLocationOutputEntity); } } @@ -132,7 +132,7 @@ if (output != null) { var grassCoverErosionOutwardsHydraulicLocationOutputEntity = - output.Create(outputType); + output.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); entity.GrassCoverErosionOutwardsHydraulicLocationOutputEntities.Add(grassCoverErosionOutwardsHydraulicLocationOutputEntity); } Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HydraulicBoundaryLocationOutputCreateExtensions.cs =================================================================== diff -u -r305b053dc83b31a9ea20e78ab6c0e6801d6085bf -rb3c727f0765a7658ebdef636b20fcc78abc11ed1 --- Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HydraulicBoundaryLocationOutputCreateExtensions.cs (.../HydraulicBoundaryLocationOutputCreateExtensions.cs) (revision 305b053dc83b31a9ea20e78ab6c0e6801d6085bf) +++ Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HydraulicBoundaryLocationOutputCreateExtensions.cs (.../HydraulicBoundaryLocationOutputCreateExtensions.cs) (revision b3c727f0765a7658ebdef636b20fcc78abc11ed1) @@ -19,30 +19,35 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System; using Application.Ringtoets.Storage.Create.IllustrationPoints; using Application.Ringtoets.Storage.DbContext; using Ringtoets.Common.Data.Hydraulics; namespace Application.Ringtoets.Storage.Create { /// - /// Extension methods for related to creating a . + /// Extension methods for related to creating a hydraulic boundary location output entity. /// internal static class HydraulicBoundaryLocationOutputCreateExtensions { /// - /// Creates a based on the information of the . + /// Creates a based on the information of the . /// - /// The output entity type to create. /// The output to create a database entity for. /// The calculation output type. - /// A new of output type . - internal static THydraulicLocationOutputEntity Create(this HydraulicBoundaryLocationOutput output, - HydraulicLocationOutputType outputType) - where THydraulicLocationOutputEntity : IHydraulicLocationOutputEntity, new() + /// A new . + internal static GrassCoverErosionOutwardsHydraulicLocationOutputEntity CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(this HydraulicBoundaryLocationOutput output, + HydraulicLocationOutputType outputType) + { - return new THydraulicLocationOutputEntity + if (output == null) { + throw new ArgumentNullException(nameof(output)); + } + + return new GrassCoverErosionOutwardsHydraulicLocationOutputEntity + { HydraulicLocationOutputType = (byte) outputType, Result = double.IsNaN(output.Result) ? (double?) null Fisheye: Tag b3c727f0765a7658ebdef636b20fcc78abc11ed1 refers to a dead (removed) revision in file `Application/Ringtoets/src/Application.Ringtoets.Storage/DbContext/PartialHydraulicLocationOutputEntity.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/HydraulicBoundaryLocationOutputCreateExtensionsTest.cs =================================================================== diff -u -rdae8dd28223d61ff9d5ae061f77834aa74e94f6f -rb3c727f0765a7658ebdef636b20fcc78abc11ed1 --- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/HydraulicBoundaryLocationOutputCreateExtensionsTest.cs (.../HydraulicBoundaryLocationOutputCreateExtensionsTest.cs) (revision dae8dd28223d61ff9d5ae061f77834aa74e94f6f) +++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/HydraulicBoundaryLocationOutputCreateExtensionsTest.cs (.../HydraulicBoundaryLocationOutputCreateExtensionsTest.cs) (revision b3c727f0765a7658ebdef636b20fcc78abc11ed1) @@ -47,7 +47,7 @@ var outputType = random.NextEnumValue(); // Call - var entity = output.Create(outputType); + GrassCoverErosionOutwardsHydraulicLocationOutputEntity entity = HydraulicBoundaryLocationOutputCreateExtensions.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); // Assert Assert.IsNotNull(entity); @@ -73,7 +73,7 @@ var outputType = random.NextEnumValue(); // Call - var entity = output.Create(outputType); + GrassCoverErosionOutwardsHydraulicLocationOutputEntity entity = HydraulicBoundaryLocationOutputCreateExtensions.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); // Assert Assert.IsNotNull(entity); @@ -100,7 +100,7 @@ var outputType = random.NextEnumValue(); // Call - var entity = output.Create(outputType); + GrassCoverErosionOutwardsHydraulicLocationOutputEntity entity = output.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); // Assert AssertGeneralResult(output.GeneralResult, entity.GeneralResultSubMechanismIllustrationPointEntity); @@ -118,7 +118,7 @@ var outputType = random.NextEnumValue(); // Call - var entity = output.Create(outputType); + GrassCoverErosionOutwardsHydraulicLocationOutputEntity entity = output.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); // Assert Assert.IsNotNull(entity); @@ -134,6 +134,21 @@ } [Test] + public void CreateGrassCoverErosionOutwardsHydraulicLocationOutputEntity_HydraulicBoundaryLocationOutputNull_ThrowsArgumentNullException() + { + // Setup + var random = new Random(21); + + // Call + TestDelegate call = () => + ((HydraulicBoundaryLocationOutput) null).CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(random.NextEnumValue()); + + // Assert + var exception = Assert.Throws(call); + Assert.AreEqual("output", exception.ParamName); + } + + [Test] public void CreateGrassCoverErosionOutwardsHydraulicLocationOutputEntity_WithNaNParameters_ReturnsHydraulicLocationEntityWithOutputNaN() { // Setup @@ -144,8 +159,8 @@ var outputType = random.NextEnumValue(); // Call - var entity = output.Create( - outputType); + GrassCoverErosionOutwardsHydraulicLocationOutputEntity entity = + output.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); // Assert Assert.IsNotNull(entity); @@ -173,7 +188,8 @@ var outputType = random.NextEnumValue(); // Call - var entity = output.Create(outputType); + GrassCoverErosionOutwardsHydraulicLocationOutputEntity entity = + output.CreateGrassCoverErosionOutwardsHydraulicBoundaryLocationOutputEntity(outputType); // Assert AssertGeneralResult(output.GeneralResult, entity.GeneralResultSubMechanismIllustrationPointEntity);