Index: Ringtoets/Common/test/Ringtoets.Common.Service.Test/HydraRingInputParserTest.cs =================================================================== diff -u -r8c4d6b66b27822afabcee01087a961f055fda01c -r85cc9b92681253f6e76719840a2fad418e4ba2d4 --- Ringtoets/Common/test/Ringtoets.Common.Service.Test/HydraRingInputParserTest.cs (.../HydraRingInputParserTest.cs) (revision 8c4d6b66b27822afabcee01087a961f055fda01c) +++ Ringtoets/Common/test/Ringtoets.Common.Service.Test/HydraRingInputParserTest.cs (.../HydraRingInputParserTest.cs) (revision 85cc9b92681253f6e76719840a2fad418e4ba2d4) @@ -21,9 +21,11 @@ using System; using System.Collections.Generic; +using System.ComponentModel; using System.Linq; using Core.Common.Base.Data; using Core.Common.Base.Geometry; +using Core.Common.TestUtil; using NUnit.Framework; using Rhino.Mocks; using Ringtoets.Common.Data.DikeProfiles; @@ -127,5 +129,27 @@ Assert.IsNull(parsedBreakWater); mockRepository.VerifyAll(); } + + [Test] + public void ParseBreakWater_InvalidBreakWaterType_ThrowInvalidEnumArgumentException() + { + // Setup + var random = new Random(22); + var mockRepository = new MockRepository(); + var breakWater = mockRepository.Stub(); + breakWater.UseBreakWater = true; + var expectedBreakWater = new BreakWater((BreakWaterType) 99, random.NextDouble()); + breakWater.Stub(call => call.BreakWater).Return(expectedBreakWater); + mockRepository.ReplayAll(); + + // Call + TestDelegate test = () => HydraRingInputParser.ParseBreakWater(breakWater); + + // Assert + string message = $"The value of argument 'type' ({99}) is invalid for Enum type '{typeof(BreakWaterType).Name}'."; + TestHelper.AssertThrowsArgumentExceptionAndTestMessage(test, message); + + mockRepository.VerifyAll(); + } } } \ No newline at end of file