Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Application.Ringtoets.Storage.csproj
===================================================================
diff -u -r2ffc105f58b79a021bb0867446237d7d4903d467 -r308f45aac80baf6744776a04e10e3cbaf8c39198
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Application.Ringtoets.Storage.csproj (.../Application.Ringtoets.Storage.csproj) (revision 2ffc105f58b79a021bb0867446237d7d4903d467)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Application.Ringtoets.Storage.csproj (.../Application.Ringtoets.Storage.csproj) (revision 308f45aac80baf6744776a04e10e3cbaf8c39198)
@@ -72,7 +72,6 @@
-
Fisheye: Tag 308f45aac80baf6744776a04e10e3cbaf8c39198 refers to a dead (removed) revision in file `Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HeightStructures/GeneralHeightStructuresInputCreateExtensions.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HeightStructures/HeightStructuresFailureMechanismCreateExtensions.cs
===================================================================
diff -u -r20e9bfea15dfe132ee137283a9f24bc4c413ce4a -r308f45aac80baf6744776a04e10e3cbaf8c39198
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HeightStructures/HeightStructuresFailureMechanismCreateExtensions.cs (.../HeightStructuresFailureMechanismCreateExtensions.cs) (revision 20e9bfea15dfe132ee137283a9f24bc4c413ce4a)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Create/HeightStructures/HeightStructuresFailureMechanismCreateExtensions.cs (.../HeightStructuresFailureMechanismCreateExtensions.cs) (revision 308f45aac80baf6744776a04e10e3cbaf8c39198)
@@ -22,6 +22,7 @@
using System;
using System.Collections.Generic;
using Application.Ringtoets.Storage.DbContext;
+using Core.Common.Utils.Extensions;
using Ringtoets.Common.Data;
using Ringtoets.Common.Data.DikeProfiles;
using Ringtoets.HeightStructures.Data;
@@ -45,7 +46,7 @@
FailureMechanismEntity entity = mechanism.Create(FailureMechanismType.StructureHeight, registry);
AddEntitiesForForeshoreProfiles(mechanism.ForeshoreProfiles, entity, registry);
AddEntitiesForHeightStructures(mechanism.HeightStructures, entity, registry);
- AddEntitiesForFailureMechanismMeta(mechanism.GeneralInput, entity);
+ AddEntitiesForFailureMechanismMeta(mechanism, entity);
entity.CalculationGroupEntity = mechanism.CalculationsGroup.Create(registry, 0);
AddEntitiesForSectionResults(mechanism.SectionResults, registry);
@@ -88,9 +89,13 @@
}
}
- private static void AddEntitiesForFailureMechanismMeta(GeneralHeightStructuresInput generalInput, FailureMechanismEntity entity)
+ private static void AddEntitiesForFailureMechanismMeta(HeightStructuresFailureMechanism mechanism, FailureMechanismEntity entity)
{
- entity.HeightStructuresFailureMechanismMetaEntities.Add(generalInput.Create());
+ entity.HeightStructuresFailureMechanismMetaEntities.Add(new HeightStructuresFailureMechanismMetaEntity
+ {
+ N = mechanism.GeneralInput.N,
+ HeightStructureCollectionSourcePath = mechanism.HeightStructures.SourcePath.DeepClone()
+ });
}
}
}
\ No newline at end of file
Index: Application/Ringtoets/src/Application.Ringtoets.Storage/Read/FailureMechanismEntityReadExtensions.cs
===================================================================
diff -u -r20e9bfea15dfe132ee137283a9f24bc4c413ce4a -r308f45aac80baf6744776a04e10e3cbaf8c39198
--- Application/Ringtoets/src/Application.Ringtoets.Storage/Read/FailureMechanismEntityReadExtensions.cs (.../FailureMechanismEntityReadExtensions.cs) (revision 20e9bfea15dfe132ee137283a9f24bc4c413ce4a)
+++ Application/Ringtoets/src/Application.Ringtoets.Storage/Read/FailureMechanismEntityReadExtensions.cs (.../FailureMechanismEntityReadExtensions.cs) (revision 308f45aac80baf6744776a04e10e3cbaf8c39198)
@@ -245,10 +245,11 @@
HeightStructuresFailureMechanism failureMechanism,
ReadConversionCollector collector)
{
+ HeightStructuresFailureMechanismMetaEntity metaEntity = entity.HeightStructuresFailureMechanismMetaEntities.Single();
entity.ReadCommonFailureMechanismProperties(failureMechanism, collector);
entity.ReadHeightStructuresMechanismSectionResults(failureMechanism, collector);
entity.ReadForeshoreProfiles(failureMechanism.ForeshoreProfiles, collector);
- entity.ReadHeightStructures(failureMechanism.HeightStructures, collector);
+ entity.ReadHeightStructures(metaEntity, failureMechanism.HeightStructures, collector);
entity.ReadGeneralInput(failureMechanism.GeneralInput);
ReadHeightStructuresRootCalculationGroup(entity.CalculationGroupEntity, failureMechanism.CalculationsGroup, collector);
}
@@ -266,10 +267,17 @@
}
}
- private static void ReadHeightStructures(this FailureMechanismEntity entity, StructureCollection heightStructures, ReadConversionCollector collector)
+ private static void ReadHeightStructures(this FailureMechanismEntity entity,
+ HeightStructuresFailureMechanismMetaEntity metaEntity,
+ StructureCollection heightStructures,
+ ReadConversionCollector collector)
{
- heightStructures.AddRange(entity.HeightStructureEntities.OrderBy(fpe => fpe.Order).Select(structureEntity => structureEntity.Read(collector)),
- "TODO: To be determined");
+ if (metaEntity.HeightStructureCollectionSourcePath != null)
+ {
+ heightStructures.AddRange(entity.HeightStructureEntities.OrderBy(fpe => fpe.Order)
+ .Select(structureEntity => structureEntity.Read(collector)),
+ metaEntity.HeightStructureCollectionSourcePath);
+ }
}
private static void ReadGeneralInput(this FailureMechanismEntity entity, GeneralHeightStructuresInput generalInput)
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Application.Ringtoets.Storage.Test.csproj
===================================================================
diff -u -r6b20f88a2f50fb210b0458b7268a325f2a8d5391 -r308f45aac80baf6744776a04e10e3cbaf8c39198
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Application.Ringtoets.Storage.Test.csproj (.../Application.Ringtoets.Storage.Test.csproj) (revision 6b20f88a2f50fb210b0458b7268a325f2a8d5391)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Application.Ringtoets.Storage.Test.csproj (.../Application.Ringtoets.Storage.Test.csproj) (revision 308f45aac80baf6744776a04e10e3cbaf8c39198)
@@ -89,7 +89,6 @@
-
Fisheye: Tag 308f45aac80baf6744776a04e10e3cbaf8c39198 refers to a dead (removed) revision in file `Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/HeightStructures/GeneralHeightStructuresInputCreateExtensionsTest.cs'.
Fisheye: No comparison available. Pass `N' to diff?
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/HeightStructures/HeightStructuresFailureMechanismCreateExtensionsTest.cs
===================================================================
diff -u -r20e9bfea15dfe132ee137283a9f24bc4c413ce4a -r308f45aac80baf6744776a04e10e3cbaf8c39198
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/HeightStructures/HeightStructuresFailureMechanismCreateExtensionsTest.cs (.../HeightStructuresFailureMechanismCreateExtensionsTest.cs) (revision 20e9bfea15dfe132ee137283a9f24bc4c413ce4a)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Create/HeightStructures/HeightStructuresFailureMechanismCreateExtensionsTest.cs (.../HeightStructuresFailureMechanismCreateExtensionsTest.cs) (revision 308f45aac80baf6744776a04e10e3cbaf8c39198)
@@ -91,6 +91,7 @@
HeightStructuresFailureMechanismMetaEntity metaEntity = entity.HeightStructuresFailureMechanismMetaEntities.First();
Assert.AreEqual(failureMechanism.GeneralInput.N, metaEntity.N);
+ Assert.IsNull(metaEntity.HeightStructureCollectionSourcePath);
}
[Test]
@@ -100,6 +101,7 @@
const string originalInput = "Some input text";
const string originalOutput = "Some output text";
const string originalNotRelevantText = "Really not relevant";
+ const string originalSourcePath = "Really not relevant";
var failureMechanism = new HeightStructuresFailureMechanism
{
InputComments =
@@ -115,6 +117,7 @@
Body = originalNotRelevantText
}
};
+ failureMechanism.HeightStructures.AddRange(Enumerable.Empty(), originalSourcePath);
var registry = new PersistenceRegistry();
// Call
@@ -130,6 +133,11 @@
Assert.AreNotSame(originalNotRelevantText, entity.NotRelevantComments,
"To create stable binary representations/fingerprints, it's really important that strings are not shared.");
Assert.AreEqual(failureMechanism.NotRelevantComments.Body, entity.NotRelevantComments);
+
+ HeightStructuresFailureMechanismMetaEntity metaEntity = entity.HeightStructuresFailureMechanismMetaEntities.First();
+ Assert.AreEqual(originalSourcePath, metaEntity.HeightStructureCollectionSourcePath);
+ Assert.AreNotSame(originalSourcePath, metaEntity.HeightStructureCollectionSourcePath,
+ "To create stable binary representations/fingerprints, it's really important that strings are not shared.");
}
[Test]
Index: Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/FailureMechanismEntityReadExtensionsTest.cs
===================================================================
diff -u -r20e9bfea15dfe132ee137283a9f24bc4c413ce4a -r308f45aac80baf6744776a04e10e3cbaf8c39198
--- Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/FailureMechanismEntityReadExtensionsTest.cs (.../FailureMechanismEntityReadExtensionsTest.cs) (revision 20e9bfea15dfe132ee137283a9f24bc4c413ce4a)
+++ Application/Ringtoets/test/Application.Ringtoets.Storage.Test/Read/FailureMechanismEntityReadExtensionsTest.cs (.../FailureMechanismEntityReadExtensionsTest.cs) (revision 308f45aac80baf6744776a04e10e3cbaf8c39198)
@@ -1039,6 +1039,7 @@
public void ReadAsHeightStructuresFailureMechanism_WithHeightStructures_ReturnFailureMechanismWithHeightStructuresSet()
{
// Setup
+ const string sourcePath = "Some path";
var entity = new FailureMechanismEntity
{
CalculationGroupEntity = new CalculationGroupEntity(),
@@ -1061,7 +1062,8 @@
{
new HeightStructuresFailureMechanismMetaEntity
{
- N = 7
+ N = 7,
+ HeightStructureCollectionSourcePath = sourcePath
}
}
};
@@ -1079,6 +1081,8 @@
HeightStructure child2 = failureMechanism.HeightStructures[1];
Assert.AreEqual("Child1", child2.Name);
+
+ Assert.AreEqual(sourcePath, failureMechanism.HeightStructures.SourcePath);
}
#endregion