Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.Designer.cs =================================================================== diff -u -r2209699cf65944d97bb2efee9da2d6754fe27745 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 2209699cf65944d97bb2efee9da2d6754fe27745) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:4.0.30319.42000 +// Runtime Version:4.0.30319.17929 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -667,6 +667,24 @@ } /// + /// Looks up a localized string similar to Er is geen vakindeling geïmporteerd.. + /// + public static string GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported { + get { + return ResourceManager.GetString("GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported", resourceCulture); + } + } + + /// + /// Looks up a localized string similar to Er is geen hydraulische randvoorwaarden database geïmporteerd.. + /// + public static string GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported { + get { + return ResourceManager.GetString("GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported", resourceCulture); + } + } + + /// /// Looks up a localized string similar to Herstellen van de verbinding met de hydraulische randvoorwaarden database is mislukt. {0}. /// public static string GuiPlugin_VerifyHydraulicBoundaryDatabasePath_Hydraulic_boundary_database_connection_failed_0_ { Index: Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.resx =================================================================== diff -u -r2209699cf65944d97bb2efee9da2d6754fe27745 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.resx (.../Resources.resx) (revision 2209699cf65944d97bb2efee9da2d6754fe27745) +++ Ringtoets/Common/src/Ringtoets.Common.Forms/Properties/Resources.resx (.../Resources.resx) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -406,4 +406,10 @@ De variatiecoëfficiënt van de normale verdeling. + + Er is geen vakindeling geïmporteerd. + + + Er is geen hydraulische randvoorwaarden database geïmporteerd. + \ No newline at end of file Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsGuiPlugin.cs =================================================================== diff -u -r14185c4e29bcfc887fa656a681bdde704d250a9f -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsGuiPlugin.cs (.../GrassCoverErosionInwardsGuiPlugin.cs) (revision 14185c4e29bcfc887fa656a681bdde704d250a9f) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/GrassCoverErosionInwardsGuiPlugin.cs (.../GrassCoverErosionInwardsGuiPlugin.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -238,12 +238,12 @@ { if (!failureMechanism.Sections.Any()) { - return Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported; + return RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported; } if (assessmentSection.HydraulicBoundaryDatabase == null) { - return Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported; + return RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported; } var validationProblem = HydraulicDatabaseHelper.ValidatePathForCalculation(assessmentSection.HydraulicBoundaryDatabase.FilePath); Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/Properties/Resources.Designer.cs =================================================================== diff -u -rdd8e88b95bba050bd07df08907e03b88673e433c -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision dd8e88b95bba050bd07df08907e03b88673e433c) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:4.0.30319.42000 +// Runtime Version:4.0.30319.17929 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -61,26 +61,6 @@ } /// - /// Looks up a localized string similar to Er is geen vakindeling geïmporteerd.. - /// - internal static string GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported { - get { - return ResourceManager.GetString("GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_" + - "imported", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Er is geen hydraulische randvoorwaarden database geïmporteerd.. - /// - internal static string GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported { - get { - return ResourceManager.GetString("GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database" + - "_imported", resourceCulture); - } - } - - /// /// Looks up a localized string similar to Er is een fout opgetreden tijdens de berekening.. /// internal static string GrassCoverErosionInwardsGuiPlugin_Error_during_overtopping_calculation { Index: Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/Properties/Resources.resx =================================================================== diff -u -ra3357275af675af3714fc89b99c554c288759ae2 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/Properties/Resources.resx (.../Resources.resx) (revision a3357275af675af3714fc89b99c554c288759ae2) +++ Ringtoets/GrassCoverErosionInwards/src/Ringtoets.GrassCoverErosionInwards.Plugin/Properties/Resources.resx (.../Resources.resx) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -120,10 +120,4 @@ Er is een fout opgetreden tijdens de berekening. - - Er is geen vakindeling geïmporteerd. - - - Er is geen hydraulische randvoorwaarden database geïmporteerd. - \ No newline at end of file Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs =================================================================== diff -u -r14185c4e29bcfc887fa656a681bdde704d250a9f -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs) (revision 14185c4e29bcfc887fa656a681bdde704d250a9f) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -275,7 +275,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuCalculateIndex, RingtoetsCommonFormsResources.Calculate, - Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, RingtoetsCommonFormsResources.CalculateIcon, false); @@ -313,7 +313,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuCalculateIndex, RingtoetsCommonFormsResources.Calculate, - Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, RingtoetsCommonFormsResources.CalculateIcon, false); Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs =================================================================== diff -u -r0e8590d1ba6edc87a2ac73240662bfcf45f20914 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs) (revision 0e8590d1ba6edc87a2ac73240662bfcf45f20914) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -373,7 +373,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(menu, contextMenuClearAllIndexRootGroup, RingtoetsFormsResources.Calculate_all, - Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, RingtoetsFormsResources.CalculateAllIcon, false); mocks.VerifyAll(); @@ -424,7 +424,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuClearAllIndexRootGroup, RingtoetsFormsResources.Calculate_all, - Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, RingtoetsFormsResources.CalculateAllIcon, false); Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsFailureMechanismContextTreeNodeInfoTest.cs =================================================================== diff -u -r2209699cf65944d97bb2efee9da2d6754fe27745 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsFailureMechanismContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsFailureMechanismContextTreeNodeInfoTest.cs) (revision 2209699cf65944d97bb2efee9da2d6754fe27745) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsFailureMechanismContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsFailureMechanismContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -396,7 +396,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(menu, contextMenuCalculateAllIndex, RingtoetsFormsResources.Calculate_all, - Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, RingtoetsFormsResources.CalculateIcon, false); mocksRepository.VerifyAll(); @@ -434,7 +434,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuCalculateAllIndex, RingtoetsFormsResources.Calculate_all, - Resources.GrassCoverErosionInwardsGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, RingtoetsFormsResources.CalculateAllIcon, false); mocksRepository.VerifyAll(); Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs =================================================================== diff -u -r14185c4e29bcfc887fa656a681bdde704d250a9f -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs (.../HeightStructuresGuiPlugin.cs) (revision 14185c4e29bcfc887fa656a681bdde704d250a9f) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/HeightStructuresGuiPlugin.cs (.../HeightStructuresGuiPlugin.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -193,12 +193,12 @@ { if (!failureMechanism.Sections.Any()) { - return Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported; + return RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported; } if (assessmentSection.HydraulicBoundaryDatabase == null) { - return Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported; + return RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported; } var validationProblem = HydraulicDatabaseHelper.ValidatePathForCalculation(assessmentSection.HydraulicBoundaryDatabase.FilePath); Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/Properties/Resources.Designer.cs =================================================================== diff -u -rdd8e88b95bba050bd07df08907e03b88673e433c -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision dd8e88b95bba050bd07df08907e03b88673e433c) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:4.0.30319.42000 +// Runtime Version:4.0.30319.17929 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -61,26 +61,6 @@ } /// - /// Looks up a localized string similar to Er is geen vakindeling geïmporteerd.. - /// - internal static string HeightStructuresGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported { - get { - return ResourceManager.GetString("HeightStructuresGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported" + - "", resourceCulture); - } - } - - /// - /// Looks up a localized string similar to Er is geen hydraulische randvoorwaarden database geïmporteerd.. - /// - internal static string HeightStructuresGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported { - get { - return ResourceManager.GetString("HeightStructuresGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_importe" + - "d", resourceCulture); - } - } - - /// /// Looks up a localized string similar to Er is een fout opgetreden tijdens de berekening.. /// internal static string HeightStructuresGuiPlugin_Error_during_overtopping_calculation { Index: Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/Properties/Resources.resx =================================================================== diff -u -rdd8e88b95bba050bd07df08907e03b88673e433c -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/Properties/Resources.resx (.../Resources.resx) (revision dd8e88b95bba050bd07df08907e03b88673e433c) +++ Ringtoets/HeightStructures/src/Ringtoets.HeightStructures.Plugin/Properties/Resources.resx (.../Resources.resx) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -1,110 +1,123 @@  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - text/microsoft-resx - - - 1.3 - - - System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - + mimetype: application/x-microsoft.net.object.bytearray.base64 + value : The object must be serialized into a byte array + : using a System.ComponentModel.TypeConverter + : and then encoded with base64 encoding. + --> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + Er is een fout opgetreden tijdens de berekening. - - Er is geen vakindeling geïmporteerd. - - - Er is geen hydraulische randvoorwaarden database geïmporteerd. - \ No newline at end of file Index: Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresCalculationContextTreeNodeInfoTest.cs =================================================================== diff -u -r14185c4e29bcfc887fa656a681bdde704d250a9f -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresCalculationContextTreeNodeInfoTest.cs (.../HeightStructuresCalculationContextTreeNodeInfoTest.cs) (revision 14185c4e29bcfc887fa656a681bdde704d250a9f) +++ Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresCalculationContextTreeNodeInfoTest.cs (.../HeightStructuresCalculationContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -231,7 +231,7 @@ TestHelper.AssertContextMenuStripContainsItem(menu, contextMenuCalculateIndex, RingtoetsCommonFormsResources.Calculate, - Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, RingtoetsCommonFormsResources.CalculateIcon, false); @@ -267,7 +267,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuCalculateIndex, RingtoetsCommonFormsResources.Calculate, - Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, RingtoetsCommonFormsResources.CalculateIcon, false); @@ -305,7 +305,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuCalculateIndex, RingtoetsCommonFormsResources.Calculate, - Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, RingtoetsCommonFormsResources.CalculateIcon, false); Index: Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresCalculationGroupContextTreeNodeInfoTest.cs =================================================================== diff -u -rea180de6e9f5ba1108b4ff3cf7bb7e57de72a37a -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresCalculationGroupContextTreeNodeInfoTest.cs (.../HeightStructuresCalculationGroupContextTreeNodeInfoTest.cs) (revision ea180de6e9f5ba1108b4ff3cf7bb7e57de72a37a) +++ Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresCalculationGroupContextTreeNodeInfoTest.cs (.../HeightStructuresCalculationGroupContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -372,7 +372,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(menu, contextMenuClearAllIndexRootGroup, RingtoetsFormsResources.Calculate_all, - Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, RingtoetsFormsResources.CalculateAllIcon, false); mocks.VerifyAll(); @@ -423,7 +423,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuClearAllIndexRootGroup, RingtoetsFormsResources.Calculate_all, - Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, RingtoetsFormsResources.CalculateAllIcon, false); Index: Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresFailureMechanismContextTreeNodeInfoTest.cs =================================================================== diff -u -r2209699cf65944d97bb2efee9da2d6754fe27745 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresFailureMechanismContextTreeNodeInfoTest.cs (.../HeightStructuresFailureMechanismContextTreeNodeInfoTest.cs) (revision 2209699cf65944d97bb2efee9da2d6754fe27745) +++ Ringtoets/HeightStructures/test/Ringtoets.HeightStructures.Forms.Test/TreeNodeInfos/HeightStructuresFailureMechanismContextTreeNodeInfoTest.cs (.../HeightStructuresFailureMechanismContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -396,7 +396,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(menu, contextMenuCalculateAllIndex, RingtoetsFormsResources.Calculate_all, - Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, RingtoetsFormsResources.CalculateIcon, false); mocksRepository.VerifyAll(); @@ -434,7 +434,7 @@ // Assert TestHelper.AssertContextMenuStripContainsItem(contextMenu, contextMenuCalculateAllIndex, RingtoetsFormsResources.Calculate_all, - Resources.HeightStructuresGuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, + RingtoetsFormsResources.GuiPlugin_AllDataAvailable_No_hydraulic_boundary_database_imported, RingtoetsFormsResources.CalculateAllIcon, false); mocksRepository.VerifyAll(); Index: Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs =================================================================== diff -u -rb53320286e086524c6003dc6e47af798ee3935be -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision b53320286e086524c6003dc6e47af798ee3935be) +++ Ringtoets/Piping/src/Ringtoets.Piping.Plugin/PipingGuiPlugin.cs (.../PipingGuiPlugin.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -19,6 +19,7 @@ // Stichting Deltares and remain full property of Stichting Deltares at all times. // All rights reserved. +using System; using System.Collections; using System.Collections.Generic; using System.Drawing; @@ -311,7 +312,7 @@ .AddToggleRelevancyOfFailureMechanismItem(pipingFailureMechanismContext, RemoveAllViewsForItem) .AddSeparator() .AddCustomItem(validateAllItem) - .AddPerformAllCalculationsInFailureMechanismItem(pipingFailureMechanismContext, CalculateAll, context => null) + .AddPerformAllCalculationsInFailureMechanismItem(pipingFailureMechanismContext, CalculateAll, EnablePerformAllCalculationsInFailureMechanism) .AddClearAllCalculationOutputInFailureMechanismItem(pipingFailureMechanismContext.WrappedData) .AddSeparator() .AddImportItem() @@ -324,6 +325,11 @@ .Build(); } + private string EnablePerformAllCalculationsInFailureMechanism(PipingFailureMechanismContext pipingFailureMechanismContext) + { + return AllDataAvailable(pipingFailureMechanismContext.WrappedData); + } + private void RemoveAllViewsForItem(PipingFailureMechanismContext failureMechanismContext) { Gui.ViewCommands.RemoveAllViewsForItem(failureMechanismContext); @@ -436,7 +442,7 @@ (o, args) => { PipingCalculationService.Validate(calculation); }); return builder.AddCustomItem(validateItem) - .AddPerformCalculationItem(calculation, nodeData, PerformCalculation, context => null) + .AddPerformCalculationItem(calculation, nodeData, PerformCalculation, EnablePerformCalculation) .AddClearCalculationOutputItem(calculation) .AddSeparator() .AddRenameItem() @@ -452,6 +458,16 @@ .Build(); } + private string EnablePerformCalculation(PipingCalculationScenarioContext context) + { + return AllDataAvailable(context.FailureMechanism); + } + + private static string AllDataAvailable(PipingFailureMechanism failureMechanism) + { + return !failureMechanism.Sections.Any() ? RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported : null; + } + private static object[] PipingCalculationContextChildNodeObjects(PipingCalculationScenarioContext pipingCalculationScenarioContext) { var childNodes = new List @@ -559,7 +575,7 @@ .AddCreateCalculationItem(nodeData, AddCalculationScenario) .AddSeparator() .AddCustomItem(validateAllItem) - .AddPerformAllCalculationsInGroupItem(group, nodeData, CalculateAll, context => null) + .AddPerformAllCalculationsInGroupItem(group, nodeData, CalculateAll, EnablePerformAllCalculationsInGroup) .AddClearAllCalculationOutputInGroupItem(group) .AddSeparator(); @@ -580,6 +596,11 @@ .Build(); } + private string EnablePerformAllCalculationsInGroup(PipingCalculationGroupContext pipingCalculationGroupContext) + { + return AllDataAvailable(pipingCalculationGroupContext.FailureMechanism); + } + private static void AddCalculationScenario(PipingCalculationGroupContext nodeData) { var calculation = new PipingCalculationScenario(nodeData.FailureMechanism.GeneralInput) Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs =================================================================== diff -u -r4c3daa6c52d8de89a58df080ea82b72b1855e534 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs (.../PipingCalculationGroupContextTreeNodeInfoTest.cs) (revision 4c3daa6c52d8de89a58df080ea82b72b1855e534) +++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs (.../PipingCalculationGroupContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -82,14 +82,14 @@ { // Setup var group = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); mocks.ReplayAll(); var groupContext = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); // Call @@ -115,15 +115,15 @@ group.Children.Add(childCalculation); group.Children.Add(childGroup); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); mocks.ReplayAll(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); // Call @@ -134,10 +134,10 @@ Assert.AreSame(calculationItem, children[0]); var returnedCalculationContext = (PipingCalculationScenarioContext) children[1]; Assert.AreSame(childCalculation, returnedCalculationContext.WrappedData); - Assert.AreSame(pipingFailureMechanismMock, returnedCalculationContext.FailureMechanism); + Assert.AreSame(pipingFailureMechanism, returnedCalculationContext.FailureMechanism); var returnedCalculationGroupContext = (PipingCalculationGroupContext) children[2]; Assert.AreSame(childGroup, returnedCalculationGroupContext.WrappedData); - Assert.AreSame(pipingFailureMechanismMock, returnedCalculationGroupContext.FailureMechanism); + Assert.AreSame(pipingFailureMechanism, returnedCalculationGroupContext.FailureMechanism); Assert.AreSame(assessmentSectionMock, returnedCalculationGroupContext.AssessmentSection); mocks.VerifyAll(); } @@ -155,18 +155,23 @@ Output = new TestPipingOutput() }); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); + var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var applicationFeatureCommandHandler = mocks.Stub(); @@ -273,13 +278,17 @@ Output = new TestPipingOutput() }); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var applicationFeatureCommandHandler = mocks.Stub(); @@ -372,7 +381,7 @@ var treeViewControl = mocks.StrictMock(); var group = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, @@ -381,7 +390,7 @@ { new TestStochasticSoilModel() }, - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); @@ -410,7 +419,7 @@ var treeViewControl = mocks.StrictMock(); var group = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, @@ -419,7 +428,7 @@ new RingtoetsPipingSurfaceLine() }, Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); @@ -448,7 +457,7 @@ var treeViewControl = mocks.StrictMock(); var group = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, @@ -460,7 +469,7 @@ { new TestStochasticSoilModel() }, - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); @@ -490,17 +499,17 @@ var group = new CalculationGroup(); var parentGroup = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(nodeData, treeViewControl)).Return(menuBuilder); @@ -531,17 +540,17 @@ var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); var group = new CalculationGroup(); var parentGroup = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var calculationItem = new CalculationGroup @@ -590,17 +599,17 @@ var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); var group = new CalculationGroup(); var parentGroup = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var calculationItem = new PipingCalculationScenario(new GeneralPipingInput()) @@ -665,18 +674,18 @@ group.Children.Add(emptyChildGroup); group.Children.Add(invalidCalculation); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(nodeData, treeViewControl)).Return(menuBuilder); @@ -706,6 +715,108 @@ } [Test] + public void ContextMenuStrip_NoFailureMechanismSections_ContextMenuItemCalculateAllDisabledAndTooltipSet() + { + // Setup + var gui = mocks.StrictMock(); + var treeViewControlMock = mocks.StrictMock(); + var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); + var pipingFailureMechanism = new PipingFailureMechanism(); + var assessmentSectionMock = mocks.StrictMock(); + + var parentGroup = new CalculationGroup(); + var group = new CalculationGroup + { + Children = + { + new PipingCalculationScenario(new GeneralPipingInput()) + } + }; + + var nodeData = new PipingCalculationGroupContext(group, + Enumerable.Empty(), + Enumerable.Empty(), + pipingFailureMechanism, + assessmentSectionMock); + + var parentNodeData = new PipingCalculationGroupContext(parentGroup, + Enumerable.Empty(), + Enumerable.Empty(), + pipingFailureMechanism, + assessmentSectionMock); + + gui.Expect(g => g.Get(nodeData, treeViewControlMock)).Return(menuBuilder); + plugin.Gui = gui; + + mocks.ReplayAll(); + + // Call + ContextMenuStrip menu = info.ContextMenuStrip(nodeData, parentNodeData, treeViewControlMock); + + // Assert + TestHelper.AssertContextMenuStripContainsItem(menu, + contextMenuCalculateAllIndex, + RingtoetsCommonFormsResources.Calculate_all, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsCommonFormsResources.CalculateAllIcon, + false); + mocks.VerifyAll(); + } + + [Test] + public void ContextMenuStrip_FailureMechanismSectionsSet_ContextMenuItemCalculateAllEnabled() + { + // Setup + var gui = mocks.StrictMock(); + var treeViewControlMock = mocks.StrictMock(); + var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); + var assessmentSectionMock = mocks.StrictMock(); + + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); + + var parentGroup = new CalculationGroup(); + var group = new CalculationGroup + { + Children = + { + new PipingCalculationScenario(new GeneralPipingInput()) + } + }; + + var nodeData = new PipingCalculationGroupContext(group, + Enumerable.Empty(), + Enumerable.Empty(), + pipingFailureMechanism, + assessmentSectionMock); + + var parentNodeData = new PipingCalculationGroupContext(parentGroup, + Enumerable.Empty(), + Enumerable.Empty(), + pipingFailureMechanism, + assessmentSectionMock); + + gui.Expect(g => g.Get(nodeData, treeViewControlMock)).Return(menuBuilder); + plugin.Gui = gui; + + mocks.ReplayAll(); + + // Call + ContextMenuStrip menu = info.ContextMenuStrip(nodeData, parentNodeData, treeViewControlMock); + + // Assert + TestHelper.AssertContextMenuStripContainsItem(menu, + contextMenuCalculateAllIndex, + RingtoetsCommonFormsResources.Calculate_all, + RingtoetsCommonFormsResources.CalculationGroup_CalculateAll_ToolTip, + RingtoetsCommonFormsResources.CalculateAllIcon); + mocks.VerifyAll(); + } + + [Test] public void ContextMenuStrip_ClickOnCalculateAllItem_ScheduleAllChildCalculations() { // Setup @@ -730,19 +841,24 @@ group.Children.Add(childGroup); group.Children.Add(emptyChildGroup); group.Children.Add(invalidCalculation); + + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); - var pipingFailureMechanismMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); assessmentSectionMock.Stub(s => s.FailureMechanismContribution).Return(new FailureMechanismContribution(Enumerable.Empty(), 30, 20000)); @@ -807,18 +923,18 @@ group.Children.Add(emptyChildGroup); group.Children.Add(calculation2); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(nodeData, treeViewControl)).Return(menuBuilder); @@ -868,7 +984,7 @@ var group = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var mainWindow = mocks.Stub(); @@ -890,7 +1006,7 @@ { new TestStochasticSoilModel() }, - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(nodeData, treeViewControl)).Return(menuBuilder); @@ -1157,22 +1273,22 @@ var observer = mocks.StrictMock(); observer.Expect(o => o.UpdateObserver()); var group = new CalculationGroup(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); mocks.ReplayAll(); var nodeData = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var parentGroup = new CalculationGroup(); parentGroup.Children.Add(group); var parentNodeData = new PipingCalculationGroupContext(parentGroup, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); parentNodeData.Attach(observer); Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationScenarioContextTreeNodeInfoTest.cs =================================================================== diff -u -r14185c4e29bcfc887fa656a681bdde704d250a9f -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationScenarioContextTreeNodeInfoTest.cs (.../PipingCalculationScenarioContextTreeNodeInfoTest.cs) (revision 14185c4e29bcfc887fa656a681bdde704d250a9f) +++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationScenarioContextTreeNodeInfoTest.cs (.../PipingCalculationScenarioContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -98,7 +98,7 @@ Output = new PipingOutput(0.0, 0.0, 0.0, 0.0, 0.0, 0.0) }; - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -111,7 +111,7 @@ { new TestStochasticSoilModel() }, - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); // Call @@ -134,14 +134,14 @@ public void ChildNodeObjects_WithoutOutput_ReturnNoChildNodes() { // Setup - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); mocks.ReplayAll(); var pipingCalculationContext = new PipingCalculationScenarioContext(new PipingCalculationScenario(new GeneralPipingInput()), Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); // Precondition @@ -171,12 +171,16 @@ var gui = mocks.StrictMock(); var treeViewControlMock = mocks.StrictMock(); var calculation = new PipingCalculationScenario(new GeneralPipingInput()); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationScenarioContext(calculation, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(nodeData, treeViewControlMock)).Return(new CustomItemsOnlyContextMenuBuilder()); @@ -206,12 +210,16 @@ { Output = new TestPipingOutput() }; - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationScenarioContext(calculation, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(nodeData, treeViewControlMock)).Return(new CustomItemsOnlyContextMenuBuilder()); @@ -232,18 +240,19 @@ } [Test] - public void ContextMenuStrip_Always_ContextMenuItemPerformCalculationEnabled() + public void ContextMenuStrip_NoFailureMechanismSections_ContextMenuItemPerformCalculationDisabledAndTooltipSet() { // Setup var gui = mocks.StrictMock(); var treeViewControlMock = mocks.StrictMock(); var calculation = new PipingCalculationScenario(new GeneralPipingInput()); - var pipingFailureMechanismMock = mocks.StrictMock(); + var failureMechanism = new PipingFailureMechanism(); + var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationScenarioContext(calculation, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + failureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(nodeData, treeViewControlMock)).Return(new CustomItemsOnlyContextMenuBuilder()); @@ -258,22 +267,66 @@ // Assert mocks.VerifyAll(); // Expect no calls on arguments - TestHelper.AssertContextMenuStripContainsItem(contextMenu, 1, RingtoetsCommonFormsResources.Calculate, RingtoetsCommonFormsResources.Calculate_ToolTip, RingtoetsCommonFormsResources.CalculateIcon); + TestHelper.AssertContextMenuStripContainsItem(contextMenu, + 1, + RingtoetsCommonFormsResources.Calculate, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsCommonFormsResources.CalculateIcon, + false); } [Test] + public void ContextMenuStrip_FailureMechanismSectionsSet_ContextMenuItemPerformCalculationEnabled() + { + // Setup + var gui = mocks.StrictMock(); + var treeViewControlMock = mocks.StrictMock(); + var calculation = new PipingCalculationScenario(new GeneralPipingInput()); + var failureMechanism = new PipingFailureMechanism(); + failureMechanism.AddSection(new FailureMechanismSection("test", new[] + { + new Point2D(0, 0) + })); + + var assessmentSectionMock = mocks.StrictMock(); + var nodeData = new PipingCalculationScenarioContext(calculation, + Enumerable.Empty(), + Enumerable.Empty(), + failureMechanism, + assessmentSectionMock); + + gui.Expect(cmp => cmp.Get(nodeData, treeViewControlMock)).Return(new CustomItemsOnlyContextMenuBuilder()); + + mocks.ReplayAll(); + + plugin.Gui = gui; + + // Call + var contextMenu = info.ContextMenuStrip(nodeData, null, treeViewControlMock); + + // Assert + mocks.VerifyAll(); // Expect no calls on arguments + + TestHelper.AssertContextMenuStripContainsItem(contextMenu, + 1, + RingtoetsCommonFormsResources.Calculate, + RingtoetsCommonFormsResources.Calculate_ToolTip, + RingtoetsCommonFormsResources.CalculateIcon); + } + + [Test] public void ContextMenuStrip_Always_CallsContextMenuBuilderMethods() { // Setup var gui = mocks.StrictMock(); var menuBuilderMock = mocks.Stub(); var treeViewControlMock = mocks.StrictMock(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var nodeData = new PipingCalculationScenarioContext(new PipingCalculationScenario(new GeneralPipingInput()), Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); menuBuilderMock.Expect(mb => mb.AddCustomItem(null)).IgnoreArguments().Return(menuBuilderMock); @@ -321,19 +374,19 @@ group.Children.Add(new PipingCalculationScenario(new GeneralPipingInput())); group.Attach(observer); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); mocks.ReplayAll(); var calculationContext = new PipingCalculationScenarioContext(elementToBeRemoved, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); var groupContext = new PipingCalculationGroupContext(group, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); // Precondition @@ -417,12 +470,16 @@ var observer = mocks.StrictMock(); var treeViewControlMock = mocks.StrictMock(); var calculation = new PipingCalculationScenario(new GeneralPipingInput()); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); var assessmentSectionMock = mocks.StrictMock(); var pipingCalculationContext = new PipingCalculationScenarioContext(calculation, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); observer.Expect(o => o.UpdateObserver()); @@ -477,12 +534,12 @@ var observer = mocks.StrictMock(); var treeViewControlMock = mocks.StrictMock(); var calculation = new PipingCalculationScenario(new GeneralPipingInput()); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var pipingCalculationContext = new PipingCalculationScenarioContext(calculation, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(pipingCalculationContext, treeViewControlMock)).Return(new CustomItemsOnlyContextMenuBuilder()); @@ -521,12 +578,16 @@ var treeViewControlMock = mocks.StrictMock(); var calculateContextMenuItemIndex = 1; var calculation = PipingCalculationFactory.CreateCalculationWithValidInput(); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); + pipingFailureMechanism.AddSection(new FailureMechanismSection("A", new[] + { + new Point2D(0, 0) + })); var assessmentSectionMock = mocks.StrictMock(); var pipingCalculationContext = new PipingCalculationScenarioContext(calculation, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); assessmentSectionMock.Stub(s => s.FailureMechanismContribution).Return(new FailureMechanismContribution(Enumerable.Empty(), 30, 20000)); @@ -580,12 +641,12 @@ var observer = mocks.StrictMock(); var treeViewControlMock = mocks.StrictMock(); var calculation = new PipingCalculationScenario(new GeneralPipingInput()); - var pipingFailureMechanismMock = mocks.StrictMock(); + var pipingFailureMechanism = new PipingFailureMechanism(); var assessmentSectionMock = mocks.StrictMock(); var pipingCalculationContext = new PipingCalculationScenarioContext(calculation, Enumerable.Empty(), Enumerable.Empty(), - pipingFailureMechanismMock, + pipingFailureMechanism, assessmentSectionMock); gui.Expect(cmp => cmp.Get(pipingCalculationContext, treeViewControlMock)).Return(new CustomItemsOnlyContextMenuBuilder()); Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismContextTreeNodeInfoTest.cs =================================================================== diff -u -r2209699cf65944d97bb2efee9da2d6754fe27745 -rf5ed0a2ad860787e42f81146b5b5d768d99adace --- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismContextTreeNodeInfoTest.cs (.../PipingFailureMechanismContextTreeNodeInfoTest.cs) (revision 2209699cf65944d97bb2efee9da2d6754fe27745) +++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismContextTreeNodeInfoTest.cs (.../PipingFailureMechanismContextTreeNodeInfoTest.cs) (revision f5ed0a2ad860787e42f81146b5b5d768d99adace) @@ -23,6 +23,7 @@ using System.Linq; using System.Windows.Forms; using Core.Common.Base; +using Core.Common.Base.Geometry; using Core.Common.Controls.TreeView; using Core.Common.Gui; using Core.Common.Gui.Commands; @@ -282,6 +283,10 @@ // Setup var treeViewControl = mocks.StrictMock(); var failureMechanism = new PipingFailureMechanism(); + failureMechanism.AddSection(new FailureMechanismSection("test", new[] + { + new Point2D(0, 0) + })); var pipingCalculation = new PipingCalculationScenario(failureMechanism.GeneralInput) { Output = new TestPipingOutput() @@ -443,6 +448,89 @@ } [Test] + public void ContextMenuStrip_NoFailureMechanismSections_ContextMenuItemCalculateAllDisabledAndTooltipSet() + { + // Setup + var treeViewControl = mocks.StrictMock(); + var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); + var pipingCalculation = new PipingCalculationScenario(new GeneralPipingInput()) + { + Output = new TestPipingOutput() + }; + + var failureMechanism = new PipingFailureMechanism(); + failureMechanism.CalculationsGroup.Children.Add(pipingCalculation); + + var assessmentSection = mocks.Stub(); + var failureMechanismContext = new PipingFailureMechanismContext(failureMechanism, assessmentSection); + + var gui = mocks.StrictMock(); + gui.Expect(cmp => cmp.Get(failureMechanismContext, treeViewControl)).Return(menuBuilder); + + mocks.ReplayAll(); + + plugin.Gui = gui; + + failureMechanism.CalculationsGroup.Children.Add(pipingCalculation); + + // Call + ContextMenuStrip contextMenu = info.ContextMenuStrip(failureMechanismContext, null, treeViewControl); + + // Assert + TestHelper.AssertContextMenuStripContainsItem(contextMenu, + contextMenuCalculateAllIndex, + RingtoetsCommonFormsResources.Calculate_all, + RingtoetsCommonFormsResources.GuiPlugin_AllDataAvailable_No_failure_mechanism_sections_imported, + RingtoetsCommonFormsResources.CalculateAllIcon, + false); + + mocks.VerifyAll(); // Expect no calls on arguments + } + + [Test] + public void ContextMenuStrip_FailureMechanismSectionsSet_ContextMenuItemCalculateAllEnabled() + { + // // Setup + var treeViewControl = mocks.StrictMock(); + var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); + var pipingCalculation = new PipingCalculationScenario(new GeneralPipingInput()) + { + Output = new TestPipingOutput() + }; + + var failureMechanism = new PipingFailureMechanism(); + failureMechanism.CalculationsGroup.Children.Add(pipingCalculation); + failureMechanism.AddSection(new FailureMechanismSection("test", new[] + { + new Point2D(0, 0) + })); + + var assessmentSection = mocks.Stub(); + var failureMechanismContext = new PipingFailureMechanismContext(failureMechanism, assessmentSection); + + var gui = mocks.StrictMock(); + gui.Expect(cmp => cmp.Get(failureMechanismContext, treeViewControl)).Return(menuBuilder); + + mocks.ReplayAll(); + + plugin.Gui = gui; + + failureMechanism.CalculationsGroup.Children.Add(pipingCalculation); + + // Call + ContextMenuStrip contextMenu = info.ContextMenuStrip(failureMechanismContext, null, treeViewControl); + + // Assert + TestHelper.AssertContextMenuStripContainsItem(contextMenu, + contextMenuCalculateAllIndex, + RingtoetsCommonFormsResources.Calculate_all, + RingtoetsCommonFormsResources.Calculate_all_ToolTip, + RingtoetsCommonFormsResources.CalculateAllIcon); + + mocks.VerifyAll(); // Expect no calls on arguments + } + + [Test] public void ContextMenuStrip_FailureMechanismIsRelevant_CallsContextMenuBuilderMethods() { // Setup @@ -576,6 +664,10 @@ var menuBuilder = new CustomItemsOnlyContextMenuBuilder(); var failureMechanism = new PipingFailureMechanism(); + failureMechanism.AddSection(new FailureMechanismSection("test", new[] + { + new Point2D(0, 0) + })); failureMechanism.CalculationsGroup.Children.Clear(); var validCalculation = PipingCalculationFactory.CreateCalculationWithValidInput();