Index: Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/HydraulicBoundaryLocationsExporter.cs =================================================================== diff -u -rac96d7c315129af851634ed5a4a6800b59ede718 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/HydraulicBoundaryLocationsExporter.cs (.../HydraulicBoundaryLocationsExporter.cs) (revision ac96d7c315129af851634ed5a4a6800b59ede718) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/HydraulicBoundaryLocationsExporter.cs (.../HydraulicBoundaryLocationsExporter.cs) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -39,48 +39,42 @@ private readonly IEnumerable hydraulicBoundaryLocations; private readonly string filePath; - private readonly string designWaterLevelName; - private readonly string waveHeightName; + private readonly IHydraulicBoundaryLocationMetaDataAttributeNameProvider metaDataAttributeNameProvider; /// /// Creates a new instance of . /// /// The hydraulic boundary locations to export. /// The path of the file to export to. - /// The Dutch name of the content of the - /// property. - /// The Dutch name of the content of the - /// property. + /// The + /// to be used for setting meta data attribute names. /// Thrown when , - /// or is null. + /// is null. /// Thrown when is invalid. public HydraulicBoundaryLocationsExporter(IEnumerable hydraulicBoundaryLocations, - string filePath, string designWaterLevelName, string waveHeightName) + string filePath, + IHydraulicBoundaryLocationMetaDataAttributeNameProvider metaDataAttributeNameProvider) { if (hydraulicBoundaryLocations == null) { throw new ArgumentNullException(nameof(hydraulicBoundaryLocations)); } - if (designWaterLevelName == null) + + if (metaDataAttributeNameProvider == null) { - throw new ArgumentNullException(nameof(designWaterLevelName)); + throw new ArgumentNullException(nameof(metaDataAttributeNameProvider)); } - if (waveHeightName == null) - { - throw new ArgumentNullException(nameof(waveHeightName)); - } IOUtils.ValidateFilePath(filePath); this.hydraulicBoundaryLocations = hydraulicBoundaryLocations; this.filePath = filePath; - this.designWaterLevelName = designWaterLevelName; - this.waveHeightName = waveHeightName; + this.metaDataAttributeNameProvider = metaDataAttributeNameProvider; } public bool Export() { - var hydraulicBoundaryLocationsWriter = new HydraulicBoundaryLocationsWriter(designWaterLevelName, waveHeightName); + var hydraulicBoundaryLocationsWriter = new HydraulicBoundaryLocationsWriter(metaDataAttributeNameProvider); try { Index: Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/HydraulicBoundaryLocationsWriter.cs =================================================================== diff -u -r9e2c53b9c44312c95766f5d40a9f645bd1abbd56 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/HydraulicBoundaryLocationsWriter.cs (.../HydraulicBoundaryLocationsWriter.cs) (revision 9e2c53b9c44312c95766f5d40a9f645bd1abbd56) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/HydraulicBoundaryLocationsWriter.cs (.../HydraulicBoundaryLocationsWriter.cs) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -22,7 +22,6 @@ using System; using System.Collections.Generic; using System.Linq; -using Core.Common.Base.Data; using Core.Common.Base.Geometry; using Core.Common.IO.Exceptions; using Core.Components.Gis.Data; @@ -39,32 +38,22 @@ /// public class HydraulicBoundaryLocationsWriter { - private readonly string designWaterLevelName; - private readonly string waveHeightName; + private readonly IHydraulicBoundaryLocationMetaDataAttributeNameProvider metaDataAttributeNameProvider; /// /// Creates a new instance of . /// - /// The Dutch name of the content of the - /// property. - /// The Dutch name of the content of the - /// property. - /// Thrown when or - /// is null. - public HydraulicBoundaryLocationsWriter(string designWaterLevelName, string waveHeightName) + /// The + /// to be used for setting meta data attribute names. + /// Thrown when is null. + public HydraulicBoundaryLocationsWriter(IHydraulicBoundaryLocationMetaDataAttributeNameProvider metaDataAttributeNameProvider) { - if (designWaterLevelName == null) + if (metaDataAttributeNameProvider == null) { - throw new ArgumentNullException(nameof(designWaterLevelName)); + throw new ArgumentNullException(nameof(metaDataAttributeNameProvider)); } - if (waveHeightName == null) - { - throw new ArgumentNullException(nameof(waveHeightName)); - } - - this.designWaterLevelName = designWaterLevelName; - this.waveHeightName = waveHeightName; + this.metaDataAttributeNameProvider = metaDataAttributeNameProvider; } /// @@ -122,15 +111,25 @@ mapFeature.MetaData.Add(Resources.HydraulicBoundaryLocation_Name, hydraulicBoundaryLocation.Name); mapFeature.MetaData.Add(Resources.HydraulicBoundaryLocation_Id, hydraulicBoundaryLocation.Id); - mapFeature.MetaData.Add("h(A+_A)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation1)); - mapFeature.MetaData.Add("h(A_B)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation2)); - mapFeature.MetaData.Add("h(B_C)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation3)); - mapFeature.MetaData.Add("h(C_D)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation4)); - mapFeature.MetaData.Add("Hs(A+_A)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation1)); - mapFeature.MetaData.Add("Hs(A_B)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation2)); - mapFeature.MetaData.Add("Hs(B_C)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation3)); - mapFeature.MetaData.Add("Hs(C_D)", GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation4)); + mapFeature.MetaData.Add(metaDataAttributeNameProvider.DesignWaterLevelCalculation1Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation1)); + mapFeature.MetaData.Add(metaDataAttributeNameProvider.DesignWaterLevelCalculation2Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation2)); + mapFeature.MetaData.Add(metaDataAttributeNameProvider.DesignWaterLevelCalculation3Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation3)); + mapFeature.MetaData.Add(metaDataAttributeNameProvider.DesignWaterLevelCalculation4Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.DesignWaterLevelCalculation4)); + + mapFeature.MetaData.Add(metaDataAttributeNameProvider.WaveHeightCalculation1Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation1)); + mapFeature.MetaData.Add(metaDataAttributeNameProvider.WaveHeightCalculation2Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation2)); + mapFeature.MetaData.Add(metaDataAttributeNameProvider.WaveHeightCalculation3Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation3)); + mapFeature.MetaData.Add(metaDataAttributeNameProvider.WaveHeightCalculation4Name, + GetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation.WaveHeightCalculation4)); + return new MapPointData(hydraulicBoundaryLocation.Name) { Features = new[] Index: Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/IHydraulicBoundaryLocationMetaDataAttributeNameProvider.cs =================================================================== diff -u --- Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/IHydraulicBoundaryLocationMetaDataAttributeNameProvider.cs (revision 0) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/IHydraulicBoundaryLocationMetaDataAttributeNameProvider.cs (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -0,0 +1,69 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets 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. + +namespace Ringtoets.Common.IO.Hydraulics +{ + /// + /// Interface for providing meta data attribute names during exports of hydraulic boundary locations. + /// + public interface IHydraulicBoundaryLocationMetaDataAttributeNameProvider + { + /// + /// Gets the meta data attribute name of the first design water level calculation. + /// + string DesignWaterLevelCalculation1Name { get; } + + /// + /// Gets the meta data attribute name of the second design water level calculation. + /// + string DesignWaterLevelCalculation2Name { get; } + + /// + /// Gets the meta data attribute name of the third design water level calculation. + /// + string DesignWaterLevelCalculation3Name { get; } + + /// + /// Gets the meta data attribute name of the fourth design water level calculation. + /// + string DesignWaterLevelCalculation4Name { get; } + + /// + /// Gets the meta data attribute name of the first design wave height calculation. + /// + string WaveHeightCalculation1Name { get; } + + /// + /// Gets the meta data attribute name of the second design wave height calculation. + /// + string WaveHeightCalculation2Name { get; } + + /// + /// Gets the meta data attribute name of the third design wave height calculation. + /// + string WaveHeightCalculation3Name { get; } + + /// + /// Gets the meta data attribute name of the fourth design wave height calculation. + /// + string WaveHeightCalculation4Name { get; } + } +} \ No newline at end of file Fisheye: Tag 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 refers to a dead (removed) revision in file `Ringtoets/Common/src/Ringtoets.Common.IO/Hydraulics/IHydraulicBoundaryLocationsExporterMetaDataAttributeNameProvider.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Common/src/Ringtoets.Common.IO/Ringtoets.Common.IO.csproj =================================================================== diff -u -rf3cd236a0913455c3f6cfd730087b67e960c6d87 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Common/src/Ringtoets.Common.IO/Ringtoets.Common.IO.csproj (.../Ringtoets.Common.IO.csproj) (revision f3cd236a0913455c3f6cfd730087b67e960c6d87) +++ Ringtoets/Common/src/Ringtoets.Common.IO/Ringtoets.Common.IO.csproj (.../Ringtoets.Common.IO.csproj) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -68,7 +68,7 @@ - + Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/Hydraulics/HydraulicBoundaryLocationsExporterTest.cs =================================================================== diff -u -r9e2c53b9c44312c95766f5d40a9f645bd1abbd56 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Common/test/Ringtoets.Common.IO.Test/Hydraulics/HydraulicBoundaryLocationsExporterTest.cs (.../HydraulicBoundaryLocationsExporterTest.cs) (revision 9e2c53b9c44312c95766f5d40a9f645bd1abbd56) +++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/Hydraulics/HydraulicBoundaryLocationsExporterTest.cs (.../HydraulicBoundaryLocationsExporterTest.cs) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -26,6 +26,7 @@ using Core.Common.Base.IO; using Core.Common.TestUtil; using NUnit.Framework; +using Rhino.Mocks; using Ringtoets.Common.Data.Hydraulics; using Ringtoets.Common.Data.TestUtil; using Ringtoets.Common.IO.Hydraulics; @@ -39,43 +40,58 @@ public void Constructor_ValidParameters_ExpectedValues() { // Setup + var mocks = new MockRepository(); + var provider = mocks.Stub(); + mocks.ReplayAll(); + string filePath = TestHelper.GetScratchPadPath(Path.Combine("export", "test.shp")); // Call - var hydraulicBoundaryLocationsExporter = new HydraulicBoundaryLocationsExporter(Enumerable.Empty(), filePath, "Toetspeil", "Golfhoogte"); + var hydraulicBoundaryLocationsExporter = new HydraulicBoundaryLocationsExporter(Enumerable.Empty(), filePath, provider); // Assert Assert.IsInstanceOf(hydraulicBoundaryLocationsExporter); + mocks.VerifyAll(); } [Test] public void Constructor_HydraulicBoundaryLocationsNull_ThrowsArgumentNullException() { // Setup + var mocks = new MockRepository(); + var provider = mocks.Stub(); + mocks.ReplayAll(); + string filePath = TestHelper.GetScratchPadPath(Path.Combine("export", "test.shp")); // Call - TestDelegate call = () => new HydraulicBoundaryLocationsExporter(null, filePath, "Toetspeil", "Golfhoogte"); + TestDelegate call = () => new HydraulicBoundaryLocationsExporter(null, filePath, provider); // Assert var exception = Assert.Throws(call); Assert.AreEqual("hydraulicBoundaryLocations", exception.ParamName); + mocks.VerifyAll(); } [Test] public void Constructor_FilePathNull_ThrowArgumentException() { // Setup + var mocks = new MockRepository(); + var provider = mocks.Stub(); + mocks.ReplayAll(); + var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(123, "aName", 1.1, 2.2); // Call TestDelegate call = () => new HydraulicBoundaryLocationsExporter(new[] { hydraulicBoundaryLocation - }, null, "Toetspeil", "Golfhoogte"); + }, null, provider); // Assert Assert.Throws(call); + mocks.VerifyAll(); } [Test] @@ -89,79 +105,29 @@ TestDelegate call = () => new HydraulicBoundaryLocationsExporter(new[] { hydraulicBoundaryLocation - }, filePath, null, "Golfhoogte"); + }, filePath, null); // Assert var exception = Assert.Throws(call); - Assert.AreEqual("designWaterLevelName", exception.ParamName); + Assert.AreEqual("metaDataAttributeNameProvider", exception.ParamName); } [Test] - public void Constructor_WaveHeightNameNull_ThrowArgumentNullException() + public void Export_ValidData_ReturnsTrueAndWritesCorrectData() { // Setup - var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(123, "aName", 1.1, 2.2); + var mocks = new MockRepository(); + var provider = mocks.Stub(); + provider.Stub(p => p.DesignWaterLevelCalculation1Name).Return("h(A+_A)"); + provider.Stub(p => p.DesignWaterLevelCalculation2Name).Return("h(A_B)"); + provider.Stub(p => p.DesignWaterLevelCalculation3Name).Return("h(B_C)"); + provider.Stub(p => p.DesignWaterLevelCalculation4Name).Return("h(C_D)"); + provider.Stub(p => p.WaveHeightCalculation1Name).Return("Hs(A+_A)"); + provider.Stub(p => p.WaveHeightCalculation2Name).Return("Hs(A_B)"); + provider.Stub(p => p.WaveHeightCalculation3Name).Return("Hs(B_C)"); + provider.Stub(p => p.WaveHeightCalculation4Name).Return("Hs(C_D)"); + mocks.ReplayAll(); - string filePath = TestHelper.GetScratchPadPath(Path.Combine("export", "test.shp")); - - // Call - TestDelegate call = () => new HydraulicBoundaryLocationsExporter(new[] - { - hydraulicBoundaryLocation - }, filePath, "Toetspeil", null); - - // Assert - var exception = Assert.Throws(call); - Assert.AreEqual("waveHeightName", exception.ParamName); - } - - [Test] - public void Export_ValidData_ReturnTrueAndWritesFile() - { - // Setup - var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(123, "aName", 1.1, 2.2) - { - DesignWaterLevelCalculation1 = - { - Output = new TestHydraulicBoundaryLocationOutput(111.111) - }, - WaveHeightCalculation1 = - { - Output = new TestHydraulicBoundaryLocationOutput(222.222) - } - }; - - string directoryPath = TestHelper.GetScratchPadPath("Export_ValidData_ReturnTrue"); - Directory.CreateDirectory(directoryPath); - string filePath = Path.Combine(directoryPath, "test.shp"); - const string baseName = "test"; - - var exporter = new HydraulicBoundaryLocationsExporter(new[] - { - hydraulicBoundaryLocation - }, filePath, "Toetspeil", "Golfhoogte"); - - bool isExported; - try - { - // Call - isExported = exporter.Export(); - - // Assert - AssertEssentialShapefileExists(directoryPath, baseName, true); - } - finally - { - Directory.Delete(directoryPath, true); - } - - Assert.IsTrue(isExported); - } - - [Test] - public void Export_ValidData_WritesCorrectData() - { - // Setup var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(123, "aName", 1.1, 2.2); SetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation); @@ -173,15 +139,16 @@ var exporter = new HydraulicBoundaryLocationsExporter(new[] { hydraulicBoundaryLocation - }, filePath, "Toetspeil", "Golfhoogte"); + }, filePath, provider); // Precondition AssertEssentialShapefileExists(directoryPath, baseName, false); + bool isExported; try { // Call - exporter.Export(); + isExported = exporter.Export(); // Assert AssertEssentialShapefileExists(directoryPath, baseName, true); @@ -191,12 +158,27 @@ { Directory.Delete(directoryPath, true); } + + Assert.IsTrue(isExported); + mocks.VerifyAll(); } [Test] public void Export_InvalidDirectoryRights_LogErrorAndReturnFalse() { // Setup + var mocks = new MockRepository(); + var provider = mocks.Stub(); + provider.Stub(p => p.DesignWaterLevelCalculation1Name).Return("h(A+_A)"); + provider.Stub(p => p.DesignWaterLevelCalculation2Name).Return("h(A_B)"); + provider.Stub(p => p.DesignWaterLevelCalculation3Name).Return("h(B_C)"); + provider.Stub(p => p.DesignWaterLevelCalculation4Name).Return("h(C_D)"); + provider.Stub(p => p.WaveHeightCalculation1Name).Return("Hs(A+_A)"); + provider.Stub(p => p.WaveHeightCalculation2Name).Return("Hs(A_B)"); + provider.Stub(p => p.WaveHeightCalculation3Name).Return("Hs(B_C)"); + provider.Stub(p => p.WaveHeightCalculation4Name).Return("Hs(C_D)"); + mocks.ReplayAll(); + var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(123, "aName", 1.1, 2.2); string directoryPath = TestHelper.GetScratchPadPath("Export_InvalidDirectoryRights_LogErrorAndReturnFalse"); @@ -206,7 +188,7 @@ var exporter = new HydraulicBoundaryLocationsExporter(new[] { hydraulicBoundaryLocation - }, filePath, "Toetspeil", "Golfhoogte"); + }, filePath, provider); try { @@ -227,6 +209,8 @@ { Directory.Delete(directoryPath, true); } + + mocks.VerifyAll(); } private static void SetHydraulicBoundaryLocationOutput(HydraulicBoundaryLocation location) Index: Ringtoets/Common/test/Ringtoets.Common.IO.Test/Hydraulics/HydraulicBoundaryLocationsWriterTest.cs =================================================================== diff -u -r9e2c53b9c44312c95766f5d40a9f645bd1abbd56 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Common/test/Ringtoets.Common.IO.Test/Hydraulics/HydraulicBoundaryLocationsWriterTest.cs (.../HydraulicBoundaryLocationsWriterTest.cs) (revision 9e2c53b9c44312c95766f5d40a9f645bd1abbd56) +++ Ringtoets/Common/test/Ringtoets.Common.IO.Test/Hydraulics/HydraulicBoundaryLocationsWriterTest.cs (.../HydraulicBoundaryLocationsWriterTest.cs) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -24,6 +24,7 @@ using System.Linq; using Core.Common.TestUtil; using NUnit.Framework; +using Rhino.Mocks; using Ringtoets.Common.Data.Hydraulics; using Ringtoets.Common.Data.TestUtil; using Ringtoets.Common.IO.Hydraulics; @@ -34,60 +35,71 @@ public class HydraulicBoundaryLocationsWriterTest { [Test] - public void ParameteredConstructor_DesignWaterLevelNameNull_ThrowArgumentNullException() + public void Constructor_MetaDataAttributeNameProviderNull_ThrowArgumentNullException() { // Call - TestDelegate call = () => new HydraulicBoundaryLocationsWriter(null, "bName"); + TestDelegate call = () => new HydraulicBoundaryLocationsWriter(null); // Assert var exception = Assert.Throws(call); - Assert.AreEqual("designWaterLevelName", exception.ParamName); + Assert.AreEqual("metaDataAttributeNameProvider", exception.ParamName); } [Test] - public void ParameteredConstructor_WaveHeightNameNull_ThrowArgumentNullException() - { - // Call - TestDelegate call = () => new HydraulicBoundaryLocationsWriter("aName", null); - - // Assert - var exception = Assert.Throws(call); - Assert.AreEqual("waveHeightName", exception.ParamName); - } - - [Test] public void WriteHydraulicBoundaryLocations_HydraulicBoundaryLocationsNull_ThrowArgumentNullException() { // Setup + var mocks = new MockRepository(); + var provider = mocks.Stub(); + mocks.ReplayAll(); + string filePath = TestHelper.GetScratchPadPath(Path.Combine("WriteHydraulicBoundaryLocations_NullhydraulicBoundaryLocations_ThrowArgumentNullException", "test.shp")); - var writer = new HydraulicBoundaryLocationsWriter("aName", "bName"); + var writer = new HydraulicBoundaryLocationsWriter(provider); // Call TestDelegate call = () => writer.WriteHydraulicBoundaryLocations(null, filePath); // Assert Assert.Throws(call); + mocks.VerifyAll(); } [Test] public void WriteHydraulicBoundaryLocations_FilePathNull_ThrowArgumentNullException() { // Setup - var writer = new HydraulicBoundaryLocationsWriter("aName", "bName"); + var mocks = new MockRepository(); + var provider = mocks.Stub(); + mocks.ReplayAll(); + var writer = new HydraulicBoundaryLocationsWriter(provider); + // Call TestDelegate call = () => writer.WriteHydraulicBoundaryLocations(Enumerable.Empty(), null); // Assert Assert.Throws(call); + mocks.VerifyAll(); } [Test] public void WriteHydraulicBoundaryLocations_ValidData_WritesShapeFile() { // Setup + var mocks = new MockRepository(); + var provider = mocks.Stub(); + provider.Stub(p => p.DesignWaterLevelCalculation1Name).Return("h(A+_A)"); + provider.Stub(p => p.DesignWaterLevelCalculation2Name).Return("h(A_B)"); + provider.Stub(p => p.DesignWaterLevelCalculation3Name).Return("h(B_C)"); + provider.Stub(p => p.DesignWaterLevelCalculation4Name).Return("h(C_D)"); + provider.Stub(p => p.WaveHeightCalculation1Name).Return("Hs(A+_A)"); + provider.Stub(p => p.WaveHeightCalculation2Name).Return("Hs(A_B)"); + provider.Stub(p => p.WaveHeightCalculation3Name).Return("Hs(B_C)"); + provider.Stub(p => p.WaveHeightCalculation4Name).Return("Hs(C_D)"); + mocks.ReplayAll(); + var hydraulicBoundaryLocation = new HydraulicBoundaryLocation(123, "aName", 1.1, 2.2); SetHydraulicBoundaryLocationOutput(hydraulicBoundaryLocation); @@ -96,7 +108,7 @@ string filePath = Path.Combine(directoryPath, "test.shp"); const string baseName = "test"; - var writer = new HydraulicBoundaryLocationsWriter("Toetspeil", "Golfhoogte"); + var writer = new HydraulicBoundaryLocationsWriter(provider); // Precondition AssertEssentialShapefileExists(directoryPath, baseName, false); @@ -117,6 +129,8 @@ { Directory.Delete(directoryPath, true); } + + mocks.VerifyAll(); } private static void SetHydraulicBoundaryLocationOutput(HydraulicBoundaryLocation location) Index: Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/GrassCoverErosionOutwardsPlugin.cs =================================================================== diff -u -rc0532d07766ecad2566f7cfa4a97a9aeb6e8540c -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/GrassCoverErosionOutwardsPlugin.cs (.../GrassCoverErosionOutwardsPlugin.cs) (revision c0532d07766ecad2566f7cfa4a97a9aeb6e8540c) +++ Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/GrassCoverErosionOutwardsPlugin.cs (.../GrassCoverErosionOutwardsPlugin.cs) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -51,6 +51,7 @@ using Ringtoets.GrassCoverErosionOutwards.Forms.PropertyClasses; using Ringtoets.GrassCoverErosionOutwards.Forms.Views; using Ringtoets.GrassCoverErosionOutwards.IO.Exporters; +using Ringtoets.GrassCoverErosionOutwards.Plugin.MessageProviders; using Ringtoets.GrassCoverErosionOutwards.Plugin.Properties; using Ringtoets.GrassCoverErosionOutwards.Service; using Ringtoets.GrassCoverErosionOutwards.Service.MessageProviders; @@ -260,7 +261,7 @@ Name = RingtoetsCommonFormsResources.HydraulicBoundaryLocationsExporter_DisplayName, CreateFileExporter = (context, filePath) => new HydraulicBoundaryLocationsExporter(context.WrappedData, - filePath, Resources.DesignWaterLevel_Description, Resources.WaveHeight_Description), + filePath, new GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProvider()), IsEnabled = context => context.WrappedData.Count > 0, FileFilterGenerator = new FileFilterGenerator(RingtoetsCommonIoResources.Shape_file_filter_Extension, RingtoetsCommonIoResources.Shape_file_filter_Description) Index: Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProvider.cs =================================================================== diff -u --- Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProvider.cs (revision 0) +++ Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProvider.cs (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -0,0 +1,44 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets 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 Ringtoets.Common.Data.Hydraulics; +using Ringtoets.Common.IO.Hydraulics; +using Ringtoets.GrassCoverErosionOutwards.Data; + +namespace Ringtoets.GrassCoverErosionOutwards.Plugin.MessageProviders +{ + /// + /// This class provides the meta data attribute names during the export of + /// that are part of the . + /// + public class GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProvider + : IHydraulicBoundaryLocationMetaDataAttributeNameProvider + { + public string DesignWaterLevelCalculation1Name { get; } = "h(A+_A)"; + public string DesignWaterLevelCalculation2Name { get; } = "h(A_B)"; + public string DesignWaterLevelCalculation3Name { get; } = "h(B_C)"; + public string DesignWaterLevelCalculation4Name { get; } = "h(C_D)"; + public string WaveHeightCalculation1Name { get; } = "Hs(A+_A)"; + public string WaveHeightCalculation2Name { get; } = "Hs(A_B)"; + public string WaveHeightCalculation3Name { get; } = "Hs(B_C)"; + public string WaveHeightCalculation4Name { get; } = "Hs(C_D)"; + } +} \ No newline at end of file Fisheye: Tag 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 refers to a dead (removed) revision in file `Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationsExporterMetaDataAttributeNameProvider.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/Ringtoets.GrassCoverErosionOutwards.Plugin.csproj =================================================================== diff -u -rf3cd236a0913455c3f6cfd730087b67e960c6d87 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/Ringtoets.GrassCoverErosionOutwards.Plugin.csproj (.../Ringtoets.GrassCoverErosionOutwards.Plugin.csproj) (revision f3cd236a0913455c3f6cfd730087b67e960c6d87) +++ Ringtoets/GrassCoverErosionOutwards/src/Ringtoets.GrassCoverErosionOutwards.Plugin/Ringtoets.GrassCoverErosionOutwards.Plugin.csproj (.../Ringtoets.GrassCoverErosionOutwards.Plugin.csproj) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -14,7 +14,7 @@ - + True Index: Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProviderTest.cs =================================================================== diff -u --- Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProviderTest.cs (revision 0) +++ Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProviderTest.cs (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -0,0 +1,50 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets 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 NUnit.Framework; +using Ringtoets.Common.IO.Hydraulics; +using Ringtoets.GrassCoverErosionOutwards.Plugin.MessageProviders; + +namespace Ringtoets.GrassCoverErosionOutwards.Plugin.Test.MessageProviders +{ + [TestFixture] + public class GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProviderTest + { + [Test] + public void Constructor_Always_ReturnsExpectedValues() + { + // Call + var provider = new GrassCoverErosionOutwardsHydraulicBoundaryLocationMetaDataAttributeNameProvider(); + + // Assert + Assert.IsInstanceOf(provider); + + Assert.AreEqual("h(A+_A)", provider.DesignWaterLevelCalculation1Name); + Assert.AreEqual("h(A_B)", provider.DesignWaterLevelCalculation2Name); + Assert.AreEqual("h(B_C)", provider.DesignWaterLevelCalculation3Name); + Assert.AreEqual("h(C_D)", provider.DesignWaterLevelCalculation4Name); + Assert.AreEqual("Hs(A+_A)", provider.WaveHeightCalculation1Name); + Assert.AreEqual("Hs(A_B)", provider.WaveHeightCalculation2Name); + Assert.AreEqual("Hs(B_C)", provider.WaveHeightCalculation3Name); + Assert.AreEqual("Hs(C_D)", provider.WaveHeightCalculation4Name); + } + } +} \ No newline at end of file Fisheye: Tag 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 refers to a dead (removed) revision in file `Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test/MessageProviders/GrassCoverErosionOutwardsHydraulicBoundaryLocationsExporterMetaDataAttributeNameProviderTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test.csproj =================================================================== diff -u -rf3cd236a0913455c3f6cfd730087b67e960c6d87 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test.csproj (.../Ringtoets.GrassCoverErosionOutwards.Plugin.Test.csproj) (revision f3cd236a0913455c3f6cfd730087b67e960c6d87) +++ Ringtoets/GrassCoverErosionOutwards/test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test/Ringtoets.GrassCoverErosionOutwards.Plugin.Test.csproj (.../Ringtoets.GrassCoverErosionOutwards.Plugin.Test.csproj) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -33,7 +33,7 @@ - + Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/MessageProviders/HydraulicBoundaryLocationMetaDataAttributeNameProvider.cs =================================================================== diff -u --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/MessageProviders/HydraulicBoundaryLocationMetaDataAttributeNameProvider.cs (revision 0) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/MessageProviders/HydraulicBoundaryLocationMetaDataAttributeNameProvider.cs (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -0,0 +1,43 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets 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 Ringtoets.Common.Data.Hydraulics; +using Ringtoets.Common.IO.Hydraulics; +using Ringtoets.Integration.Data; + +namespace Ringtoets.Integration.Plugin.MessageProviders +{ + /// + /// This class provides the meta data attribute names during the export of + /// that are part of the . + /// + public class HydraulicBoundaryLocationMetaDataAttributeNameProvider : IHydraulicBoundaryLocationMetaDataAttributeNameProvider + { + public string DesignWaterLevelCalculation1Name { get; } = "h(A+_A)"; + public string DesignWaterLevelCalculation2Name { get; } = "h(A_B)"; + public string DesignWaterLevelCalculation3Name { get; } = "h(B_C)"; + public string DesignWaterLevelCalculation4Name { get; } = "h(C_D)"; + public string WaveHeightCalculation1Name { get; } = "Hs(A+_A)"; + public string WaveHeightCalculation2Name { get; } = "Hs(A_B)"; + public string WaveHeightCalculation3Name { get; } = "Hs(B_C)"; + public string WaveHeightCalculation4Name { get; } = "Hs(C_D)"; + } +} \ No newline at end of file Fisheye: Tag 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 refers to a dead (removed) revision in file `Ringtoets/Integration/src/Ringtoets.Integration.Plugin/MessageProviders/HydraulicBoundaryLocationsExporterMetaDataAttributeNameProvider.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Properties/Resources.Designer.cs =================================================================== diff -u -r709f3facbecfbba05b508205ae68ff699eae9943 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 709f3facbecfbba05b508205ae68ff699eae9943) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -40,7 +40,7 @@ // class via a tool like ResGen or Visual Studio. // To add or remove a member, edit your .ResX file then rerun ResGen // with the /str option, or rebuild your VS project. - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")] + [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "15.0.0.0")] [global::System.Diagnostics.DebuggerNonUserCodeAttribute()] [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()] public class Resources { @@ -140,15 +140,6 @@ } /// - /// Looks up a localized string similar to h(norm). - /// - public static string DesignWaterLevel_Description { - get { - return ResourceManager.GetString("DesignWaterLevel_Description", resourceCulture); - } - } - - /// /// Looks up a localized string similar to Als u de norm aanpast, dan worden alle rekenresultaten van alle hydraulische randvoorwaarden en toetssporen verwijderd. /// ///Weet u zeker dat u wilt doorgaan?. @@ -241,14 +232,5 @@ return ResourceManager.GetString("RingtoetsRibbon_GroupBox_New", resourceCulture); } } - - /// - /// Looks up a localized string similar to Hs(norm). - /// - public static string WaveHeight_Description { - get { - return ResourceManager.GetString("WaveHeight_Description", resourceCulture); - } - } } } Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Properties/Resources.resx =================================================================== diff -u -r709f3facbecfbba05b508205ae68ff699eae9943 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Properties/Resources.resx (.../Resources.resx) (revision 709f3facbecfbba05b508205ae68ff699eae9943) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Properties/Resources.resx (.../Resources.resx) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -130,12 +130,6 @@ ..\Resources\Foreshore.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - h(norm) - - - Hs(norm) - Na het importeren van een aangepaste ligging van de referentielijn zullen alle geïmporteerde en berekende gegevens van alle toetssporen worden gewist. Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Ringtoets.Integration.Plugin.csproj =================================================================== diff -u -rf3cd236a0913455c3f6cfd730087b67e960c6d87 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Ringtoets.Integration.Plugin.csproj (.../Ringtoets.Integration.Plugin.csproj) (revision f3cd236a0913455c3f6cfd730087b67e960c6d87) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/Ringtoets.Integration.Plugin.csproj (.../Ringtoets.Integration.Plugin.csproj) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -31,7 +31,7 @@ - + True Index: Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsPlugin.cs =================================================================== diff -u -r558241ef9493905c11075a1408aa1d209678f5ff -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsPlugin.cs (.../RingtoetsPlugin.cs) (revision 558241ef9493905c11075a1408aa1d209678f5ff) +++ Ringtoets/Integration/src/Ringtoets.Integration.Plugin/RingtoetsPlugin.cs (.../RingtoetsPlugin.cs) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -84,6 +84,7 @@ using Ringtoets.Integration.Forms.Views.SectionResultViews; using Ringtoets.Integration.Plugin.FileImporters; using Ringtoets.Integration.Plugin.Handlers; +using Ringtoets.Integration.Plugin.MessageProviders; using Ringtoets.Integration.Service; using Ringtoets.Integration.Service.MessageProviders; using Ringtoets.MacroStabilityInwards.Data; @@ -544,8 +545,7 @@ { Name = RingtoetsCommonDataResources.HydraulicBoundaryConditions_DisplayName, CreateFileExporter = (context, filePath) => new HydraulicBoundaryLocationsExporter( - context.WrappedData.Locations, filePath, - RingtoetsIntegrationPluginResources.DesignWaterLevel_Description, RingtoetsIntegrationPluginResources.WaveHeight_Description), + context.WrappedData.Locations, filePath, new HydraulicBoundaryLocationMetaDataAttributeNameProvider()), IsEnabled = context => context.WrappedData.IsLinked(), FileFilterGenerator = new FileFilterGenerator(RingtoetsCommonIOResources.Shape_file_filter_Extension, RingtoetsCommonIOResources.Shape_file_filter_Description) Index: Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/MessageProviders/HydraulicBoundaryLocationMetaDataAttributeNameProviderTest.cs =================================================================== diff -u --- Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/MessageProviders/HydraulicBoundaryLocationMetaDataAttributeNameProviderTest.cs (revision 0) +++ Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/MessageProviders/HydraulicBoundaryLocationMetaDataAttributeNameProviderTest.cs (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -0,0 +1,50 @@ +// Copyright (C) Stichting Deltares 2017. All rights reserved. +// +// This file is part of Ringtoets. +// +// Ringtoets 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 NUnit.Framework; +using Ringtoets.Common.IO.Hydraulics; +using Ringtoets.Integration.Plugin.MessageProviders; + +namespace Ringtoets.Integration.Plugin.Test.MessageProviders +{ + [TestFixture] + public class HydraulicBoundaryLocationMetaDataAttributeNameProviderTest + { + [Test] + public void Constructor_Always_ReturnsExpectedValues() + { + // Call + var provider = new HydraulicBoundaryLocationMetaDataAttributeNameProvider(); + + // Assert + Assert.IsInstanceOf(provider); + + Assert.AreEqual("h(A+_A)", provider.DesignWaterLevelCalculation1Name); + Assert.AreEqual("h(A_B)", provider.DesignWaterLevelCalculation2Name); + Assert.AreEqual("h(B_C)", provider.DesignWaterLevelCalculation3Name); + Assert.AreEqual("h(C_D)", provider.DesignWaterLevelCalculation4Name); + Assert.AreEqual("Hs(A+_A)", provider.WaveHeightCalculation1Name); + Assert.AreEqual("Hs(A_B)", provider.WaveHeightCalculation2Name); + Assert.AreEqual("Hs(B_C)", provider.WaveHeightCalculation3Name); + Assert.AreEqual("Hs(C_D)", provider.WaveHeightCalculation4Name); + } + } +} \ No newline at end of file Fisheye: Tag 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 refers to a dead (removed) revision in file `Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/MessageProviders/HydraulicBoundaryLocationsExporterMetaDataAttributeNameProviderTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/Ringtoets.Integration.Plugin.Test.csproj =================================================================== diff -u -rf3cd236a0913455c3f6cfd730087b67e960c6d87 -r5deab7d49ce4ee20f8a2c0b52a952b22e8e89563 --- Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/Ringtoets.Integration.Plugin.Test.csproj (.../Ringtoets.Integration.Plugin.Test.csproj) (revision f3cd236a0913455c3f6cfd730087b67e960c6d87) +++ Ringtoets/Integration/test/Ringtoets.Integration.Plugin.Test/Ringtoets.Integration.Plugin.Test.csproj (.../Ringtoets.Integration.Plugin.Test.csproj) (revision 5deab7d49ce4ee20f8a2c0b52a952b22e8e89563) @@ -46,7 +46,7 @@ - +