Index: Riskeer/Integration/src/Riskeer.Integration.IO/Exporters/HydraulicBoundaryLocationCalculationsExporter.cs
===================================================================
diff -u
--- Riskeer/Integration/src/Riskeer.Integration.IO/Exporters/HydraulicBoundaryLocationCalculationsExporter.cs (revision 0)
+++ Riskeer/Integration/src/Riskeer.Integration.IO/Exporters/HydraulicBoundaryLocationCalculationsExporter.cs (revision 6f3dc4c0604a47896eb338dd94fcf30080a90924)
@@ -0,0 +1,64 @@
+// Copyright (C) Stichting Deltares 2021. All rights reserved.
+//
+// This file is part of Riskeer.
+//
+// Riskeer is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.Collections.Generic;
+using Core.Common.Base.IO;
+using Core.Common.Util;
+using Riskeer.Common.Data.Hydraulics;
+
+namespace Riskeer.Integration.IO.Exporters
+{
+ ///
+ /// Exports hydraulic boundary location calculations and stores them as a shapefile.
+ ///
+ public class HydraulicBoundaryLocationCalculationsExporter : IFileExporter
+ {
+ private readonly IEnumerable calculations;
+ private readonly string filePath;
+
+ ///
+ /// Creates a new instance of .
+ ///
+ /// The calculations to export.
+ /// The path of the file to export to.
+ /// Thrown when
+ /// is null.
+ /// Thrown when is invalid.
+ public HydraulicBoundaryLocationCalculationsExporter(IEnumerable calculations, string filePath)
+ {
+ if (calculations == null)
+ {
+ throw new ArgumentNullException(nameof(calculations));
+ }
+
+ IOUtils.ValidateFilePath(filePath);
+
+ this.calculations = calculations;
+ this.filePath = filePath;
+ }
+
+ public bool Export()
+ {
+ return false;
+ }
+ }
+}
\ No newline at end of file
Index: Riskeer/Integration/test/Riskeer.Integration.IO.Test/Exporters/HydraulicBoundaryLocationCalculationsExporterTest.cs
===================================================================
diff -u
--- Riskeer/Integration/test/Riskeer.Integration.IO.Test/Exporters/HydraulicBoundaryLocationCalculationsExporterTest.cs (revision 0)
+++ Riskeer/Integration/test/Riskeer.Integration.IO.Test/Exporters/HydraulicBoundaryLocationCalculationsExporterTest.cs (revision 6f3dc4c0604a47896eb338dd94fcf30080a90924)
@@ -0,0 +1,72 @@
+// Copyright (C) Stichting Deltares 2021. All rights reserved.
+//
+// This file is part of Riskeer.
+//
+// Riskeer is free software: you can redistribute it and/or modify
+// it under the terms of the GNU General Public License as published by
+// the Free Software Foundation, either version 3 of the License, or
+// (at your option) any later version.
+//
+// This program is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+// GNU General Public License for more details.
+//
+// You should have received a copy of the GNU General Public License
+// along with this program. If not, see .
+//
+// All names, logos, and references to "Deltares" are registered trademarks of
+// Stichting Deltares and remain full property of Stichting Deltares at all times.
+// All rights reserved.
+
+using System;
+using System.IO;
+using System.Linq;
+using Core.Common.Base.IO;
+using Core.Common.TestUtil;
+using NUnit.Framework;
+using Riskeer.Common.Data.Hydraulics;
+using Riskeer.Integration.IO.Exporters;
+
+namespace Riskeer.Integration.IO.Test.Exporters
+{
+ [TestFixture]
+ public class HydraulicBoundaryLocationCalculationsExporterTest
+ {
+ [Test]
+ public void Constructor_CalculationsNull_ThrowsArgumentNullException()
+ {
+ // Call
+ void Call() => new HydraulicBoundaryLocationCalculationsExporter(null, string.Empty);
+
+ // Assert
+ var exception = Assert.Throws(Call);
+ Assert.AreEqual("calculations", exception.ParamName);
+ }
+
+ [Test]
+ public void Constructor_FilePathNull_ThrowsArgumentException()
+ {
+ // Call
+ void Call() => new HydraulicBoundaryLocationCalculationsExporter(
+ Enumerable.Empty(), null);
+
+ // Assert
+ Assert.Throws(Call);
+ }
+
+ [Test]
+ public void Constructor_ExpectedValues()
+ {
+ // Setup
+ string filePath = TestHelper.GetScratchPadPath(Path.Combine("export", "test.shp"));
+
+ // Call
+ var exporter = new HydraulicBoundaryLocationCalculationsExporter(
+ Enumerable.Empty(), filePath);
+
+ // Assert
+ Assert.IsInstanceOf(exporter);
+ }
+ }
+}
\ No newline at end of file