Index: Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_21.1_21.2.sql =================================================================== diff -u -r72549fa836a955d78bd0254fd274672e2f82d0a4 -rfbb3961d1c8833d5529768d56feb945b424ab125 --- Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_21.1_21.2.sql (.../Migration_21.1_21.2.sql) (revision 72549fa836a955d78bd0254fd274672e2f82d0a4) +++ Riskeer/Migration/src/Riskeer.Migration.Core/EmbeddedResources/Migration_21.1_21.2.sql (.../Migration_21.1_21.2.sql) (revision fbb3961d1c8833d5529768d56feb945b424ab125) @@ -235,7 +235,35 @@ INSERT INTO MacroStabilityOutwardsSectionResultEntity SELECT * FROM [SOURCEPROJECT].MacroStabilityOutwardsSectionResultEntity; INSERT INTO MicrostabilitySectionResultEntity SELECT * FROM [SOURCEPROJECT].MicrostabilitySectionResultEntity; INSERT INTO PipingCharacteristicPointEntity SELECT * FROM [SOURCEPROJECT].PipingCharacteristicPointEntity; -INSERT INTO PipingFailureMechanismMetaEntity SELECT * FROM [SOURCEPROJECT].PipingFailureMechanismMetaEntity; + +INSERT INTO PipingFailureMechanismMetaEntity ( + [PipingFailureMechanismMetaEntityId], + [FailureMechanismEntityId], + [A], + [WaterVolumetricWeight], + [StochasticSoilModelCollectionSourcePath], + [SurfaceLineCollectionSourcePath], + [PipingScenarioConfigurationType]) +SELECT + [PipingFailureMechanismMetaEntityId], + [FailureMechanismEntityId], + [A], + [WaterVolumetricWeight], + [StochasticSoilModelCollectionSourcePath], + [SurfaceLineCollectionSourcePath], + 1 +FROM [SOURCEPROJECT].PipingFailureMechanismMetaEntity; + +INSERT INTO PipingScenarioConfigurationPerFailureMechanismSectionEntity ( + [FailureMechanismSectionEntityId], + [PipingScenarioConfigurationPerFailureMechanismSectionType]) +SELECT + [FailureMechanismSectionEntityId], + 1 +FROM [SOURCEPROJECT].FailureMechanismEntity +JOIN [SOURCEPROJECT].FailureMechanismSectionEntity USING (FailureMechanismEntityId) +WHERE FailureMechanismType = 1; + INSERT INTO PipingSectionResultEntity SELECT * FROM [SOURCEPROJECT].PipingSectionResultEntity; INSERT INTO PipingSoilLayerEntity SELECT * FROM [SOURCEPROJECT].PipingSoilLayerEntity; INSERT INTO PipingSoilProfileEntity SELECT * FROM [SOURCEPROJECT].PipingSoilProfileEntity; Index: Riskeer/Migration/test/Riskeer.Migration.Integration.Test/MigrationTo212IntegrationTest.cs =================================================================== diff -u -r72549fa836a955d78bd0254fd274672e2f82d0a4 -rfbb3961d1c8833d5529768d56feb945b424ab125 --- Riskeer/Migration/test/Riskeer.Migration.Integration.Test/MigrationTo212IntegrationTest.cs (.../MigrationTo212IntegrationTest.cs) (revision 72549fa836a955d78bd0254fd274672e2f82d0a4) +++ Riskeer/Migration/test/Riskeer.Migration.Integration.Test/MigrationTo212IntegrationTest.cs (.../MigrationTo212IntegrationTest.cs) (revision fbb3961d1c8833d5529768d56feb945b424ab125) @@ -80,6 +80,9 @@ AssertFailureMechanism(reader, sourceFilePath); AssertFailureMechanismSection(reader, sourceFilePath); + + AssertPipingFailureMechanism(reader, sourceFilePath); + AssertPipingScenarioConfigurationPerFailureMechanismSection(reader, sourceFilePath); } AssertLogDatabase(logFilePath); @@ -107,7 +110,7 @@ "AND NEW.[NotInAssemblyComments] IS OLD.[NotRelevantComments] " + "AND NEW.[CalculationsInputComments] IS NULL; " + "DETACH SOURCEPROJECT;"; - + reader.AssertReturnedDataIsValid(validateFailureMechanism); } @@ -289,6 +292,46 @@ reader.AssertReturnedDataIsValid(validateOutput); } + private static void AssertPipingFailureMechanism(MigratedDatabaseReader reader, string sourceFilePath) + { + string validateFailureMechanismMetaEntity = + $"ATTACH DATABASE \"{sourceFilePath}\" AS SOURCEPROJECT; " + + "SELECT COUNT() = " + + "(" + + "SELECT COUNT() " + + "FROM SOURCEPROJECT.PipingFailureMechanismMetaEntity " + + ") " + + "FROM PipingFailureMechanismMetaEntity NEW " + + "JOIN SOURCEPROJECT.PipingFailureMechanismMetaEntity OLD USING(PipingFailureMechanismMetaEntityId) " + + "WHERE NEW.[FailureMechanismEntityId] = OLD.[FailureMechanismEntityId] " + + "AND NEW.[A] = OLD.[A] " + + "AND NEW.[WaterVolumetricWeight] = OLD.[WaterVolumetricWeight] " + + "AND NEW.[StochasticSoilModelCollectionSourcePath] IS OLD.[StochasticSoilModelCollectionSourcePath] " + + "AND NEW.[SurfaceLineCollectionSourcePath] IS OLD.[SurfaceLineCollectionSourcePath] " + + "AND NEW.[PipingScenarioConfigurationType] = 1; " + + "DETACH SOURCEPROJECT;"; + + reader.AssertReturnedDataIsValid(validateFailureMechanismMetaEntity); + } + + private static void AssertPipingScenarioConfigurationPerFailureMechanismSection(MigratedDatabaseReader reader, string sourceFilePath) + { + string validatePipingScenarioConfigurationPerFailureMechanismSectionEntity = + $"ATTACH DATABASE \"{sourceFilePath}\" AS SOURCEPROJECT; " + + "SELECT COUNT() = " + + "(" + + "SELECT COUNT() " + + "FROM SOURCEPROJECT.FailureMechanismEntity " + + "JOIN SOURCEPROJECT.FailureMechanismSectionEntity USING(FailureMechanismEntityId) " + + "WHERE FailureMechanismType = 1 " + + ") " + + "FROM PipingScenarioConfigurationPerFailureMechanismSectionEntity NEW " + + "WHERE NEW.[PipingScenarioConfigurationPerFailureMechanismSectionType] = 1;" + + "DETACH SOURCEPROJECT;"; + + reader.AssertReturnedDataIsValid(validatePipingScenarioConfigurationPerFailureMechanismSectionEntity); + } + private static void AssertGrassCoverErosionInwardsCalculation(MigratedDatabaseReader reader, string sourceFilePath) { const string getNormQuery =