Fisheye: Tag 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 refers to a dead (removed) revision in file `Core/Common/src/Core.Common.Gui/Commands/ExportImportCommandHandler.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/src/Core.Common.Gui/Commands/GuiExportHandler.cs =================================================================== diff -u -r84355c65e37e079dedfb6037e16ff0c5b9fa8e64 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/Commands/GuiExportHandler.cs (.../GuiExportHandler.cs) (revision 84355c65e37e079dedfb6037e16ff0c5b9fa8e64) +++ Core/Common/src/Core.Common.Gui/Commands/GuiExportHandler.cs (.../GuiExportHandler.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -32,9 +32,9 @@ namespace Core.Common.Gui.Commands { /// - /// Class responsible for data export commands. + /// Class responsible for handling export workflow with user interaction. /// - public class GuiExportHandler + public class GuiExportHandler : IExportCommandHandler { private static readonly ILog log = LogManager.GetLogger(typeof(GuiExportHandler)); private static readonly Bitmap brickImage = Resources.brick; @@ -53,12 +53,11 @@ this.exportInfos = exportInfos; } - /// - /// Asks the user to select which exporter to use if multiple are available. Then - /// if an exporter is found/selected, the user is asked for a location to export to. - /// Finally the data is being exported from the source object. - /// - /// The export source. + public bool CanExportFrom(object source) + { + return GetSupportedExportInfos(source).Any(); + } + public void ExportFrom(object source) { var exportInfo = GetSupportedExportInfoUsingDialog(source); @@ -70,25 +69,27 @@ ExportItemUsingFileOpenDialog(exportInfo, source); } - /// - /// Checks whether or not exporters are available for . - /// - /// The data object to check the export support for. - /// Whether or not can be exported. - public bool CanExportFrom(object source) + private IEnumerable GetSupportedExportInfos(object source) { - return GetSupportedExportInfos(source).Any(); + if (source == null) + { + return Enumerable.Empty(); + } + + var sourceType = source.GetType(); + + return exportInfos.Where(info => (info.DataType == sourceType || sourceType.Implements(info.DataType)) && info.IsEnabled(source)); } - private ExportInfo GetSupportedExportInfoUsingDialog(object itemToExport) + private ExportInfo GetSupportedExportInfoUsingDialog(object source) { - var supportedExportInfos = GetSupportedExportInfos(itemToExport).ToArray(); + var supportedExportInfos = GetSupportedExportInfos(source).ToArray(); if (supportedExportInfos.Length == 0) { MessageBox.Show(Resources.GuiExportHandler_GetSupportedExporterForItemUsingDialog_No_exporter_for_this_item_available, Resources.GuiExportHandler_GetSupportedExporterForItemUsingDialog_Error); - var itemToExportType = itemToExport == null ? "null" : itemToExport.GetType().FullName; + var itemToExportType = source == null ? "null" : source.GetType().FullName; log.Warn(string.Format(Resources.GuiExportHandler_GetSupportedExporterForItemUsingDialog_No_exporter_for_this_item_0_available, itemToExportType)); return null; } @@ -110,10 +111,11 @@ return supportedExportInfos.First(info => info.Name == selectExportInfoDialog.SelectedItemTypeName); } } + return null; } - private void ExportItemUsingFileOpenDialog(ExportInfo exportInfo, object item) + private void ExportItemUsingFileOpenDialog(ExportInfo exportInfo, object source) { log.Info(Resources.GuiExportHandler_ExporterItemUsingFileOpenDialog_Start_exporting); @@ -127,30 +129,18 @@ { if (saveFileDialog.ShowDialog(dialogParent) == DialogResult.OK) { - var exporter = exportInfo.CreateFileExporter(item, saveFileDialog.FileName); + var exporter = exportInfo.CreateFileExporter(source, saveFileDialog.FileName); if (exporter.Export()) { log.Info(Resources.GuiExportHandler_ExporterItemUsingFileOpenDialog_Finished_exporting); } else { - log.Warn(Resources.GuiExportHandler_ExporterItemUsingFileOpenDialog_Export_failed); + log.Error(Resources.GuiExportHandler_ExporterItemUsingFileOpenDialog_Export_failed); } } } } - - private IEnumerable GetSupportedExportInfos(object source) - { - if (source == null) - { - return Enumerable.Empty(); - } - - var sourceType = source.GetType(); - - return exportInfos.Where(info => (info.DataType == sourceType || sourceType.Implements(info.DataType)) && info.IsEnabled(source)); - } } } \ No newline at end of file Index: Core/Common/src/Core.Common.Gui/Commands/GuiImportHandler.cs =================================================================== diff -u -r5daa9f73f05cf59182cc6c3048f3174adc3ee3d9 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/Commands/GuiImportHandler.cs (.../GuiImportHandler.cs) (revision 5daa9f73f05cf59182cc6c3048f3174adc3ee3d9) +++ Core/Common/src/Core.Common.Gui/Commands/GuiImportHandler.cs (.../GuiImportHandler.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -34,7 +34,7 @@ /// /// Class responsible for handling import workflow with user interaction. /// - public class GuiImportHandler + public class GuiImportHandler : IImportCommandHandler { private static readonly ILog log = LogManager.GetLogger(typeof(GuiImportHandler)); @@ -52,20 +52,26 @@ this.fileImporters = fileImporters; } - /// - /// Asks the user to select which importer to use if multiple are available. Then - /// if an importer is found/selected, the user is asked for a source to import from. - /// Finally the data is being imported to the target object. - /// - /// The import target. - public void ImportDataTo(object target) + public bool CanImportOn(object target) { - ImportToItem(target); + return fileImporters.Any(fileImporter => fileImporter.CanImportOn(target)); } - private IFileImporter GetSupportedImporterForTargetType(object target) + public void ImportOn(object target) { + var importer = GetSupportedImporterUsingDialog(target); + if (importer == null) + { + return; + } + + ImportItemsUsingFileOpenDialog(importer, target); + } + + private IFileImporter GetSupportedImporterUsingDialog(object target) + { var importers = fileImporters.Where(fileImporter => fileImporter.CanImportOn(target)).ToArray(); + if (!importers.Any()) { MessageBox.Show(Resources.GuiImportHandler_GetSupportedImporterForTargetType_No_importer_available_for_this_item, @@ -75,7 +81,6 @@ return null; } - // If there is only one available importer use that: if (importers.Length == 1) { return importers[0]; @@ -96,23 +101,14 @@ return importers.First(i => i.Name == selectImporterDialog.SelectedItemTypeName); } } + return null; } - private void ImportToItem(object item) + private void ImportItemsUsingFileOpenDialog(IFileImporter importer, object target) { - var importer = GetSupportedImporterForTargetType(item); - if (importer == null) - { - return; - } - - GetImportedItemsUsingFileOpenDialog(importer, item); - } - - private void GetImportedItemsUsingFileOpenDialog(IFileImporter importer, object target) - { var windowTitle = string.Format(Resources.GuiImportHandler_GetImportedItemsUsingFileOpenDialog_Select_a_DataType_0_file_to_import_from, importer.Name); + using (var dialog = new OpenFileDialog { Filter = importer.FileFilter, Index: Core/Common/src/Core.Common.Gui/Commands/IExportCommandHandler.cs =================================================================== diff -u --- Core/Common/src/Core.Common.Gui/Commands/IExportCommandHandler.cs (revision 0) +++ Core/Common/src/Core.Common.Gui/Commands/IExportCommandHandler.cs (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -0,0 +1,48 @@ +// Copyright (C) Stichting Deltares 2016. 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 Lesser 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 Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser 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 Core.Common.Gui.Commands +{ + /// + /// Interface declaring commands/methods related to exporting data. + /// + public interface IExportCommandHandler + { + /// + /// Indicates if there are exporters for the given source object. + /// + /// The source object to check exporter availability for. + /// true if there are exporters available, false otherwise. + bool CanExportFrom(object source); + + /// + /// Perform the export workflow by the following steps: + /// + /// If multiple exporters are available for the source object, ask the user + /// which exporter to use; + /// Ask the user which file or file-destination to export to; + /// Export from the source object to the specified location. + /// + /// + /// The data object to export from. + void ExportFrom(object source); + } +} \ No newline at end of file Fisheye: Tag 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 refers to a dead (removed) revision in file `Core/Common/src/Core.Common.Gui/Commands/IExportImportCommandHandler.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/src/Core.Common.Gui/Commands/IImportCommandHandler.cs =================================================================== diff -u --- Core/Common/src/Core.Common.Gui/Commands/IImportCommandHandler.cs (revision 0) +++ Core/Common/src/Core.Common.Gui/Commands/IImportCommandHandler.cs (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -0,0 +1,48 @@ +// Copyright (C) Stichting Deltares 2016. 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 Lesser 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 Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser 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 Core.Common.Gui.Commands +{ + /// + /// Interface declaring commands/methods related to importing data. + /// + public interface IImportCommandHandler + { + /// + /// Indicates if there are importers for the given target object. + /// + /// The target object to check importer availability for. + /// true if there are importers available, false otherwise. + bool CanImportOn(object target); + + /// + /// Perform the import workflow by the following steps: + /// + /// If multiple importers are available for the target object, ask the user + /// which importer to use; + /// Ask the user which file to use to import from; + /// Import from the user specified file to the target object. + /// + /// + /// The data object to import to. + void ImportOn(object target); + } +} \ No newline at end of file Index: Core/Common/src/Core.Common.Gui/ContextMenu/ContextMenuBuilder.cs =================================================================== diff -u -ref1c61d94f2aec3b4ff32fcf03253d7ad386c8e5 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/ContextMenu/ContextMenuBuilder.cs (.../ContextMenuBuilder.cs) (revision ef1c61d94f2aec3b4ff32fcf03253d7ad386c8e5) +++ Core/Common/src/Core.Common.Gui/ContextMenu/ContextMenuBuilder.cs (.../ContextMenuBuilder.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -40,24 +40,36 @@ /// /// Creates a new instance of . /// - /// The from which to obtain information to render and bind actions - /// to the items of the . If null, this builder will not render items which - /// require this type of information. - /// The - /// from which to obtain information to render and bind actions to the items of the - /// . If null, this builder will not render items - /// which require this type of information. - /// The from which - /// to obtain information to render and bind actions to the items of the . - /// If null, this builder will not render items which require this type of information. + /// The from which to obtain + /// information to render and bind actions to the items of the . If null, + /// this builder will not render items which require this type of information. + /// The from which to obtain + /// information to render and bind actions to the items of the . If null, + /// this builder will not render items which require this type of information. + /// The from which to obtain + /// information to render and bind actions to the items of the . If null, + /// this builder will not render items which require this type of information. + /// The from which to obtain information to render + /// and bind actions to the items of the . If null, this builder will not + /// render items which require this type of information. /// The data object for which to create a . /// The to use while executing the actions. /// Thrown when the any input argument is null. - public ContextMenuBuilder(IApplicationFeatureCommands featureCommandHandler, IExportImportCommandHandler importExportHandler, IViewCommands viewsCommandsHandler, object dataObject, TreeViewControl treeViewControl) + public ContextMenuBuilder(IApplicationFeatureCommands featureCommandHandler, + IImportCommandHandler importCommandHandler, + IExportCommandHandler exportCommandHandler, + IViewCommands viewCommands, + object dataObject, + TreeViewControl treeViewControl) { try { - guiItemsFactory = new GuiContextMenuItemFactory(featureCommandHandler, importExportHandler, viewsCommandsHandler, dataObject); + guiItemsFactory = new GuiContextMenuItemFactory(featureCommandHandler, + importCommandHandler, + exportCommandHandler, + viewCommands, + dataObject); + treeViewItemsFactory = new TreeViewContextMenuItemFactory(dataObject, treeViewControl); } catch (ArgumentNullException e) Index: Core/Common/src/Core.Common.Gui/ContextMenu/GuiContextMenuItemFactory.cs =================================================================== diff -u -ref1c61d94f2aec3b4ff32fcf03253d7ad386c8e5 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/ContextMenu/GuiContextMenuItemFactory.cs (.../GuiContextMenuItemFactory.cs) (revision ef1c61d94f2aec3b4ff32fcf03253d7ad386c8e5) +++ Core/Common/src/Core.Common.Gui/ContextMenu/GuiContextMenuItemFactory.cs (.../GuiContextMenuItemFactory.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -21,7 +21,6 @@ using System; using System.Windows.Forms; - using Core.Common.Gui.Commands; using Core.Common.Gui.Properties; @@ -33,41 +32,58 @@ internal class GuiContextMenuItemFactory { private readonly IApplicationFeatureCommands applicationFeatureCommandHandler; - private readonly IExportImportCommandHandler exportImportCommandHandler; + private readonly IImportCommandHandler importCommandHandler; + private readonly IExportCommandHandler exportCommandHandler; private readonly IViewCommands viewCommands; private readonly object dataObject; /// /// Creates a new instance of . /// - /// The which contains information for creating the - /// . - /// The + /// The /// which contains information for creating the . - /// The which contains + /// The which contains /// information for creating the . + /// The which contains + /// information for creating the . + /// The which contains information for + /// creating the . /// The data object for which to create . /// Thrown when any input argument is null. - public GuiContextMenuItemFactory(IApplicationFeatureCommands applicationFeatureCommandHandler, IExportImportCommandHandler exportImportCommandHandler, IViewCommands viewCommandsHandler, object dataObject) + public GuiContextMenuItemFactory(IApplicationFeatureCommands applicationFeatureCommandHandler, + IImportCommandHandler importCommandHandler, + IExportCommandHandler exportCommandHandler, + IViewCommands viewCommandsHandler, + object dataObject) { if (applicationFeatureCommandHandler == null) { - throw new ArgumentNullException("applicationFeatureCommandHandler", Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_gui); + throw new ArgumentNullException("applicationFeatureCommandHandler", + Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_gui); } - if (exportImportCommandHandler == null) + if (importCommandHandler == null) { - throw new ArgumentNullException("exportImportCommandHandler", Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_exportImport_handler); + throw new ArgumentNullException("importCommandHandler", + Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_import_handler); } + if (exportCommandHandler == null) + { + throw new ArgumentNullException("exportCommandHandler", + Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_export_handler); + } if (viewCommandsHandler == null) { - throw new ArgumentNullException("viewCommandsHandler", Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_view_commands); + throw new ArgumentNullException("viewCommandsHandler", + Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_view_commands); } if (dataObject == null) { - throw new ArgumentNullException("dataObject", Resources.ContextMenuItemFactory_Can_not_create_context_menu_items_without_data); + throw new ArgumentNullException("dataObject", + Resources.ContextMenuItemFactory_Can_not_create_context_menu_items_without_data); } this.applicationFeatureCommandHandler = applicationFeatureCommandHandler; - this.exportImportCommandHandler = exportImportCommandHandler; + this.importCommandHandler = importCommandHandler; + this.exportCommandHandler = exportCommandHandler; viewCommands = viewCommandsHandler; this.dataObject = dataObject; } @@ -98,14 +114,14 @@ /// The created . public ToolStripItem CreateExportItem() { - bool canExport = exportImportCommandHandler.CanExportFrom(dataObject); + bool canExport = exportCommandHandler.CanExportFrom(dataObject); var newItem = new ToolStripMenuItem(Resources.Export) { ToolTipText = Resources.Export_ToolTip, Image = Resources.ExportIcon, Enabled = canExport }; - newItem.Click += (s, e) => exportImportCommandHandler.ExportFrom(dataObject); + newItem.Click += (s, e) => exportCommandHandler.ExportFrom(dataObject); return newItem; } @@ -117,14 +133,14 @@ /// The created . public ToolStripItem CreateImportItem() { - bool canImport = exportImportCommandHandler.CanImportOn(dataObject); + bool canImport = importCommandHandler.CanImportOn(dataObject); var newItem = new ToolStripMenuItem(Resources.Import) { ToolTipText = Resources.Import_ToolTip, Image = Resources.ImportIcon, Enabled = canImport }; - newItem.Click += (s, e) => exportImportCommandHandler.ImportOn(dataObject); + newItem.Click += (s, e) => importCommandHandler.ImportOn(dataObject); return newItem; } @@ -144,7 +160,7 @@ Enabled = canShowProperties }; newItem.Click += (s, e) => applicationFeatureCommandHandler.ShowPropertiesFor(dataObject); - + return newItem; } } Index: Core/Common/src/Core.Common.Gui/Core.Common.Gui.csproj =================================================================== diff -u -re25d2b8b5045ee7549f406cfb8a4ea0f81ec7a7d -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/Core.Common.Gui.csproj (.../Core.Common.Gui.csproj) (revision e25d2b8b5045ee7549f406cfb8a4ea0f81ec7a7d) +++ Core/Common/src/Core.Common.Gui/Core.Common.Gui.csproj (.../Core.Common.Gui.csproj) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -104,12 +104,12 @@ - - + + Index: Core/Common/src/Core.Common.Gui/GuiCore.cs =================================================================== diff -u -rba9236580e1e4361d4c5392c238f8b9930aaa90e -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/GuiCore.cs (.../GuiCore.cs) (revision ba9236580e1e4361d4c5392c238f8b9930aaa90e) +++ Core/Common/src/Core.Common.Gui/GuiCore.cs (.../GuiCore.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -118,9 +118,8 @@ viewCommandHandler = new ViewCommandHandler(this, this, this); storageCommandHandler = new StorageCommandHandler(projectStore, this, MainWindow); - exportImportCommandHandler = new ExportImportCommandHandler(MainWindow, - Plugins.SelectMany(p => p.GetFileImporters()), - Plugins.SelectMany(p => p.GetExportInfos())); + importCommandHandler = new GuiImportHandler(MainWindow, Plugins.SelectMany(p => p.GetFileImporters())); + exportCommandHandler = new GuiExportHandler(MainWindow, Plugins.SelectMany(p => p.GetExportInfos())); WindowsApplication.EnableVisualStyles(); ViewPropertyEditor.ViewCommands = ViewCommands; @@ -201,7 +200,13 @@ { throw new InvalidOperationException("Call IGui.Run in order to initialize dependencies before getting the ContextMenuBuilder."); } - return new ContextMenuBuilder(applicationFeatureCommands, exportImportCommandHandler, ViewCommands, dataObject, treeViewControl); + + return new ContextMenuBuilder(applicationFeatureCommands, + importCommandHandler, + exportCommandHandler, + ViewCommands, + dataObject, + treeViewControl); } #endregion @@ -416,7 +421,7 @@ { splashScreen = new SplashScreen { - VersionText = SettingsHelper.ApplicationVersion, + VersionText = SettingsHelper.ApplicationVersion }; splashScreen.IsVisibleChanged += delegate @@ -648,7 +653,8 @@ private ApplicationFeatureCommandHandler applicationFeatureCommands; private readonly ViewCommandHandler viewCommandHandler; - private readonly ExportImportCommandHandler exportImportCommandHandler; + private readonly GuiImportHandler importCommandHandler; + private readonly GuiExportHandler exportCommandHandler; private StorageCommandHandler storageCommandHandler; public IApplicationFeatureCommands ApplicationCommands Index: Core/Common/src/Core.Common.Gui/Properties/Resources.Designer.cs =================================================================== diff -u -r72da35fee21360783bf87322879144f16d7e7589 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 72da35fee21360783bf87322879144f16d7e7589) +++ Core/Common/src/Core.Common.Gui/Properties/Resources.Designer.cs (.../Resources.Designer.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -1,25 +1,4 @@ -// Copyright (C) Stichting Deltares 2016. 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 Lesser 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 Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser 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. - -//------------------------------------------------------------------------------ +//------------------------------------------------------------------------------ // // This code was generated by a tool. // Runtime Version:4.0.30319.42000 @@ -564,15 +543,6 @@ } /// - /// Looks up a localized string similar to Kan niet importeren naar {0}.. - /// - public static string ExportImportCommandHandler_ImportOn_Unable_to_import_on_0_ { - get { - return ResourceManager.GetString("ExportImportCommandHandler_ImportOn_Unable_to_import_on_0_", resourceCulture); - } - } - - /// /// Looks up a localized string similar to Toetsspoor. /// public static string FailureMechanismContributionView_GridColumn_Assessment { @@ -628,12 +598,12 @@ } /// - /// Looks up a localized string similar to Kan geen 'IExportImportCommandHandler'-afhankelijk element in het contextmenu creëren zonder een 'IExportImportCommandHandler'.. + /// Looks up a localized string similar to Kan geen 'IExportCommandHandler'-afhankelijk element in het contextmenu creëren zonder een 'IExportCommandHandler'.. /// - public static string GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_exportImport_handler { + public static string GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_export_handler { get { - return ResourceManager.GetString("GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_exportImp" + - "ort_handler", resourceCulture); + return ResourceManager.GetString("GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_export_ha" + + "ndler", resourceCulture); } } @@ -647,6 +617,16 @@ } /// + /// Looks up a localized string similar to Kan geen 'IImportCommandHandler'-afhankelijk element in het contextmenu creëren zonder een 'IImportCommandHandler'.. + /// + public static string GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_import_handler { + get { + return ResourceManager.GetString("GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_import_ha" + + "ndler", resourceCulture); + } + } + + /// /// Looks up a localized string similar to Kan geen 'IViewCommands'-afhankelijk element in het contextmenu creëren zonder een 'IViewCommands'.. /// public static string GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_view_commands { Index: Core/Common/src/Core.Common.Gui/Properties/Resources.resx =================================================================== diff -u -r72da35fee21360783bf87322879144f16d7e7589 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/src/Core.Common.Gui/Properties/Resources.resx (.../Resources.resx) (revision 72da35fee21360783bf87322879144f16d7e7589) +++ Core/Common/src/Core.Common.Gui/Properties/Resources.resx (.../Resources.resx) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -148,9 +148,6 @@ Weergeven/Verbergen - - Kan niet importeren naar {0}. - ..\Resources\openfolderHS.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a @@ -520,9 +517,12 @@ Het Ringtoetsproject '{0}' is succesvol opgeslagen. - - Kan geen 'IExportImportCommandHandler'-afhankelijk element in het contextmenu creëren zonder een 'IExportImportCommandHandler'. + + Kan geen 'IImportCommandHandler'-afhankelijk element in het contextmenu creëren zonder een 'IImportCommandHandler'. + + Kan geen 'IExportCommandHandler'-afhankelijk element in het contextmenu creëren zonder een 'IExportCommandHandler'. + Kan geen 'IViewCommands'-afhankelijk element in het contextmenu creëren zonder een 'IViewCommands'. Fisheye: Tag 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 refers to a dead (removed) revision in file `Core/Common/test/Core.Common.Gui.Test/Commands/ExportImportCommandHandlerTest.cs'. Fisheye: No comparison available. Pass `N' to diff? Index: Core/Common/test/Core.Common.Gui.Test/Commands/GuiExportHandlerTest.cs =================================================================== diff -u -rdd84dcabe5561e637e4ade45457437d9c037535b -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/test/Core.Common.Gui.Test/Commands/GuiExportHandlerTest.cs (.../GuiExportHandlerTest.cs) (revision dd84dcabe5561e637e4ade45457437d9c037535b) +++ Core/Common/test/Core.Common.Gui.Test/Commands/GuiExportHandlerTest.cs (.../GuiExportHandlerTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -21,6 +21,8 @@ using System; using System.Collections.Generic; +using System.Linq; +using System.Windows.Forms; using Core.Common.Base.IO; using Core.Common.Gui.Commands; using Core.Common.Gui.Forms.MainWindow; @@ -200,6 +202,67 @@ mockRepository.VerifyAll(); } + [Test] + public void CanExportFrom_HasNoFileExportersForTarget_ReturnFalse() + { + // Setup + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + mocks.ReplayAll(); + + var commandHandler = new GuiExportHandler(dialogParent, Enumerable.Empty()); + + // Call + var isExportPossible = commandHandler.CanExportFrom(new object()); + + // Assert + Assert.IsFalse(isExportPossible); + mocks.VerifyAll(); + } + + [Test] + public void CanExportFrom_HasOneFileExporterForTarget_ReturnTrue() + { + // Setup + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + mocks.ReplayAll(); + + var commandHandler = new GuiExportHandler(dialogParent, new List + { + new ExportInfo() + }); + + // Call + var isExportPossible = commandHandler.CanExportFrom(new object()); + + // Assert + Assert.IsTrue(isExportPossible); + mocks.VerifyAll(); + } + + [Test] + public void CanExportFrom_HasMultipleFileExportersForTarget_ReturnTrue() + { + // Setup + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + mocks.ReplayAll(); + + var commandHandler = new GuiExportHandler(dialogParent, new List + { + new ExportInfo(), + new ExportInfo() + }); + + // Call + var isExportPossible = commandHandler.CanExportFrom(new object()); + + // Assert + Assert.IsTrue(isExportPossible); + mocks.VerifyAll(); + } + private static ExportInfo GetUnsupportedExportInfo() { return new ExportInfo(); Index: Core/Common/test/Core.Common.Gui.Test/Commands/GuiImportHandlerTest.cs =================================================================== diff -u -rf566e21cccf5b760e3f3856065a49917fde1b877 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/test/Core.Common.Gui.Test/Commands/GuiImportHandlerTest.cs (.../GuiImportHandlerTest.cs) (revision f566e21cccf5b760e3f3856065a49917fde1b877) +++ Core/Common/test/Core.Common.Gui.Test/Commands/GuiImportHandlerTest.cs (.../GuiImportHandlerTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -22,6 +22,8 @@ using System; using System.Collections.Generic; using System.Drawing; +using System.Linq; +using System.Windows.Forms; using Core.Common.Base.IO; using Core.Common.Gui.Commands; using Core.Common.Gui.Forms.MainWindow; @@ -35,10 +37,9 @@ public class GuiImportHandlerTest : NUnitFormTest { [Test] - public void ImportDataTo_NoImporterAvailable_GivesMessageBox() + public void ImportOn_NoImporterAvailable_GivesMessageBox() { // Setup - var fileImporters = new List(); var mockRepository = new MockRepository(); var mainWindow = mockRepository.Stub(); mockRepository.ReplayAll(); @@ -54,10 +55,10 @@ messageBox.ClickOk(); }; - var importHandler = new GuiImportHandler(mainWindow, fileImporters); + var importHandler = new GuiImportHandler(mainWindow, new List()); // Call - importHandler.ImportDataTo(typeof(Int64)); + importHandler.ImportOn(typeof(Int64)); // Assert Assert.AreEqual("Fout", messageBoxTitle); @@ -66,7 +67,7 @@ } [Test] - public void ImportDataTo_NoSupportedImporterAvailable_GivesMessageBox() + public void ImportOn_NoSupportedImporterAvailable_GivesMessageBox() { // Setup var fileImporters = new List @@ -91,20 +92,152 @@ var importHandler = new GuiImportHandler(mainWindow, fileImporters); // Call - importHandler.ImportDataTo(typeof(Int64)); + importHandler.ImportOn(typeof(Int64)); // Assert Assert.AreEqual("Fout", messageBoxTitle); Assert.AreEqual("Geen enkele 'Importer' is beschikbaar voor dit element.", messageBoxText); mockRepository.VerifyAll(); } + [Test] + public void CanImportOn_HasNoFileImportersForTarget_ReturnFalse() + { + // Setup + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + var fileImporters = Enumerable.Empty(); + mocks.ReplayAll(); + + var commandHandler = new GuiImportHandler(dialogParent, fileImporters); + + // Call + var isImportPossible = commandHandler.CanImportOn(new object()); + + // Assert + Assert.IsFalse(isImportPossible); + mocks.VerifyAll(); + } + + [Test] + public void CanImportOn_HasOneFileImporterForTarget_ReturnTrue() + { + // Setup + var target = new object(); + + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + var objectImporter = mocks.Stub(); + objectImporter.Stub(i => i.CanImportOn(target)).Return(true); + mocks.ReplayAll(); + + var fileImporters = new List + { + objectImporter + }; + + var commandHandler = new GuiImportHandler(dialogParent, fileImporters); + + // Call + var isImportPossible = commandHandler.CanImportOn(target); + + // Assert + Assert.IsTrue(isImportPossible); + mocks.VerifyAll(); + } + + [Test] + public void CanImportOn_HasOneFileImporterForTargetThatCannotImportOnTarget_ReturnFalse() + { + // Setup + var target = new object(); + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + var objectImporter = mocks.Stub(); + objectImporter.Stub(i => i.CanImportOn(target)).Return(false); + mocks.ReplayAll(); + + var fileImporters = new List + { + objectImporter + }; + + var commandHandler = new GuiImportHandler(dialogParent, fileImporters); + + // Call + var isImportPossible = commandHandler.CanImportOn(target); + + // Assert + Assert.IsFalse(isImportPossible); + mocks.VerifyAll(); + } + + [Test] + public void CanImportOn_HasMultipleFileImporterForTargetWhereAtLeastOneCanHandleTargetItem_ReturnTrue() + { + // Setup + var target = new object(); + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + var objectImporter1 = mocks.Stub(); + objectImporter1.Stub(i => i.CanImportOn(target)).Return(false); + var objectImporter2 = mocks.Stub(); + objectImporter2.Stub(i => i.CanImportOn(target)).Return(true); + mocks.ReplayAll(); + + var fileImporters = new List + { + objectImporter1, objectImporter2 + }; + + var commandHandler = new GuiImportHandler(dialogParent, fileImporters); + + // Call + var isImportPossible = commandHandler.CanImportOn(target); + + // Assert + Assert.IsTrue(isImportPossible); + mocks.VerifyAll(); + } + + [Test] + public void CanImportOn_HasMultipleFileImporterForTargetThatCannotBeUsedForImporting_ReturnFalse() + { + // Setup + var target = new object(); + var mocks = new MockRepository(); + var dialogParent = mocks.Stub(); + var objectImporter1 = mocks.Stub(); + objectImporter1.Stub(i => i.CanImportOn(target)).Return(false); + var objectImporter2 = mocks.Stub(); + objectImporter2.Stub(i => i.CanImportOn(target)).Return(false); + mocks.ReplayAll(); + + var fileImporters = new List + { + objectImporter1, objectImporter2 + }; + + var commandHandler = new GuiImportHandler(dialogParent, fileImporters); + + // Call + var isImportPossible = commandHandler.CanImportOn(target); + + // Assert + Assert.IsFalse(isImportPossible); + mocks.VerifyAll(); + } + private class UnsupportedFileImporter : IFileImporter { public string Name { get; private set; } + public string Category { get; private set; } + public Bitmap Image { get; private set; } + public string FileFilter { get; private set; } + public ProgressChangedDelegate ProgressChanged { get; set; } public bool CanImportOn(object targetItem) @@ -118,6 +251,7 @@ } public void Cancel() {} + public void DoPostImportUpdates(object targetItem) {} } } Index: Core/Common/test/Core.Common.Gui.Test/ContextMenu/ContextMenuBuilderTest.cs =================================================================== diff -u -r4e6c8ac0eb663ddfe4565745fb4829a8432019e2 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/test/Core.Common.Gui.Test/ContextMenu/ContextMenuBuilderTest.cs (.../ContextMenuBuilderTest.cs) (revision 4e6c8ac0eb663ddfe4565745fb4829a8432019e2) +++ Core/Common/test/Core.Common.Gui.Test/ContextMenu/ContextMenuBuilderTest.cs (.../ContextMenuBuilderTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -45,14 +45,20 @@ public void Constructor_NoApplicationFeatureCommands_ThrowsContextMenuBuilderException() { // Setup - var importExportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { // Call - TestDelegate test = () => new ContextMenuBuilder(null, importExportHandlerMock, viewCommandsMock, new object(), treeViewControl); + TestDelegate test = () => new ContextMenuBuilder(null, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); // Assert var message = Assert.Throws(test).Message; @@ -62,17 +68,23 @@ } [Test] - public void Constructor_NoExportImportHandler_ThrowsContextMenuBuilderException() + public void Constructor_NoImportCommandHandler_ThrowsContextMenuBuilderException() { // Setup + var exportCommandHandlerMock = mocks.StrictMock(); var applicationFeatureCommandsMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { // Call - TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMock, null, viewCommandsMock, new object(), treeViewControl); + TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMock, + null, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); // Assert var message = Assert.Throws(test).Message; @@ -82,17 +94,49 @@ } [Test] + public void Constructor_NoExportCommandHandler_ThrowsContextMenuBuilderException() + { + // Setup + var importCommandHandlerMock = mocks.StrictMock(); + var applicationFeatureCommandsMock = mocks.StrictMock(); + var viewCommandsMock = mocks.StrictMock(); + mocks.ReplayAll(); + + using (var treeViewControl = new TreeViewControl()) + { + // Call + TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + null, + viewCommandsMock, + new object(), + treeViewControl); + + // Assert + var message = Assert.Throws(test).Message; + Assert.AreEqual(Resources.ContextMenuBuilder_ContextMenuBuilder_Cannot_create_instances_of_factories, message); + } + mocks.VerifyAll(); + } + + [Test] public void Constructor_NoViewCommands_ThrowsContextMenuBuilderException() { // Setup var applicationFeatureCommandsMockMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { // Call - TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMockMock, exportImportHandlerMock, null, new object(), treeViewControl); + TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMockMock, + importCommandHandlerMock, + exportCommandHandlerMock, + null, + new object(), + treeViewControl); // Assert var message = Assert.Throws(test).Message; @@ -106,14 +150,20 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var importExportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { // Call - TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMock, importExportHandlerMock, viewCommandsMock, null, treeViewControl); + TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + null, + treeViewControl); // Assert var message = Assert.Throws(test).Message; @@ -127,11 +177,17 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var importExportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); // Call - TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMock, importExportHandlerMock, viewCommandsMock, new object(), null); + TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + null); // Assert var message = Assert.Throws(test).Message; @@ -143,14 +199,20 @@ { // Setup var applicationFeatureCommandsMockMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { // Call - TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMockMock, exportImportHandlerMock, viewCommandsMock, new object(), treeViewControl); + TestDelegate test = () => new ContextMenuBuilder(applicationFeatureCommandsMockMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); // Assert Assert.DoesNotThrow(test); @@ -163,13 +225,19 @@ { // Setup var applicationFeatureCommandsMockMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var builder = new ContextMenuBuilder(applicationFeatureCommandsMockMock, exportImportHandlerMock, viewCommandsMock, new object(), treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMockMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); // Call var result = builder.Build(); @@ -188,7 +256,8 @@ var dataObject = new object(); var treeViewControl = new TreeViewControl(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var treeNodeInfoMock = mocks.StrictMock>(); @@ -200,7 +269,12 @@ mocks.ReplayAll(); - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, dataObject, treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + dataObject, + treeViewControl); // Call var result = builder.AddRenameItem().Build(); @@ -222,13 +296,17 @@ var parentData = new object(); var treeViewControl = new TreeViewControl(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var treeNodeInfoMock = mocks.StrictMock>(); var parentTreeNodeInfoMock = mocks.StrictMock>(); treeNodeInfoMock.CanRemove = (nd, pnd) => nd == nodeData && pnd == parentData; - parentTreeNodeInfoMock.ChildNodeObjects = nd => new object[] { nodeData }; + parentTreeNodeInfoMock.ChildNodeObjects = nd => new object[] + { + nodeData + }; treeViewControl.RegisterTreeNodeInfo(treeNodeInfoMock); treeViewControl.RegisterTreeNodeInfo(parentTreeNodeInfoMock); @@ -237,7 +315,12 @@ mocks.ReplayAll(); - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, nodeData, treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData, + treeViewControl); // Call var result = builder.AddDeleteItem().Build(); @@ -259,15 +342,21 @@ // Setup var dataObject = new object(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var treeViewControlMock = mocks.StrictMock(); treeViewControlMock.Expect(tvc => tvc.CanExpandOrCollapseForData(dataObject)).Return(hasChildren); mocks.ReplayAll(); - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, dataObject, treeViewControlMock); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + dataObject, + treeViewControlMock); // Call var result = builder.AddExpandAllItem().Build(); @@ -279,7 +368,7 @@ TestHelper.AssertContextMenuStripContainsItem(result, 0, Resources.Expand_all, Resources.Expand_all_ToolTip, Resources.ExpandAllIcon, hasChildren); mocks.VerifyAll(); - } + } [Test] [TestCase(true)] @@ -289,15 +378,21 @@ // Setup var dataObject = new object(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var treeViewControlMock = mocks.StrictMock(); treeViewControlMock.Expect(tvc => tvc.CanExpandOrCollapseForData(dataObject)).Return(hasChildren); mocks.ReplayAll(); - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, dataObject, treeViewControlMock); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + dataObject, + treeViewControlMock); // Call var result = builder.AddCollapseAllItem().Build(); @@ -318,17 +413,23 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); - + var nodeData = new object(); viewCommandsMock.Expect(ch => ch.CanOpenViewFor(nodeData)).Return(hasViewForNodeData); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, nodeData, treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData, + treeViewControl); // Call var result = builder.AddOpenItem().Build(); @@ -340,7 +441,7 @@ TestHelper.AssertContextMenuStripContainsItem(result, 0, Resources.Open, Resources.Open_ToolTip, Resources.OpenIcon, hasViewForNodeData); } mocks.VerifyAll(); - } + } [Test] [TestCase(true)] @@ -349,19 +450,24 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); - exportImportHandlerMock.Expect(ch => ch.CanExportFrom(nodeData)).Return(hasExportersForNodeData); + exportCommandHandlerMock.Expect(ch => ch.CanExportFrom(nodeData)).Return(hasExportersForNodeData); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData, + treeViewControl); - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, nodeData, treeViewControl); - // Call var result = builder.AddExportItem().Build(); @@ -372,7 +478,7 @@ TestHelper.AssertContextMenuStripContainsItem(result, 0, Resources.Export, Resources.Export_ToolTip, Resources.ExportIcon, hasExportersForNodeData); } mocks.VerifyAll(); - } + } [Test] [TestCase(true)] @@ -381,19 +487,24 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); - exportImportHandlerMock.Expect(ch => ch.CanImportOn(nodeData)).Return(hasImportersForNodeData); + importCommandHandlerMock.Expect(ch => ch.CanImportOn(nodeData)).Return(hasImportersForNodeData); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData, + treeViewControl); - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, nodeData, treeViewControl); - // Call var result = builder.AddImportItem().Build(); @@ -404,7 +515,7 @@ TestHelper.AssertContextMenuStripContainsItem(result, 0, Resources.Import, Resources.Import_ToolTip, Resources.ImportIcon, hasImportersForNodeData); } mocks.VerifyAll(); - } + } [Test] [TestCase(true)] @@ -413,7 +524,8 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); @@ -423,9 +535,13 @@ using (var treeViewControl = new TreeViewControl()) { + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData, + treeViewControl); - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, nodeData, treeViewControl); - // Call var result = builder.AddPropertiesItem().Build(); @@ -443,13 +559,18 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, new object(), treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); var item = new StrictContextMenuItem(null, null, null, null); // Call @@ -469,13 +590,19 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, new object(), treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); // Call var result = builder.AddSeparator().Build(); @@ -494,13 +621,19 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, new object(), treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); var someItem = new StrictContextMenuItem(null, null, null, null); @@ -527,13 +660,19 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, new object(), treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); var someItem = new StrictContextMenuItem(null, null, null, null); var someOtherItem = new StrictContextMenuItem(null, null, null, null); @@ -564,13 +703,19 @@ { // Setup var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, new object(), treeViewControl); + var builder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object(), + treeViewControl); builder.AddCustomItem(new StrictContextMenuItem(null, null, null, null)); Index: Core/Common/test/Core.Common.Gui.Test/ContextMenu/GuiContextMenuItemFactoryTest.cs =================================================================== diff -u -r151bab16a7ebc1bffc0621ab56c6dc219db1e90f -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/test/Core.Common.Gui.Test/ContextMenu/GuiContextMenuItemFactoryTest.cs (.../GuiContextMenuItemFactoryTest.cs) (revision 151bab16a7ebc1bffc0621ab56c6dc219db1e90f) +++ Core/Common/test/Core.Common.Gui.Test/ContextMenu/GuiContextMenuItemFactoryTest.cs (.../GuiContextMenuItemFactoryTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -41,10 +41,20 @@ } [Test] - public void Constructor_WithoutCommandHandler_ThrowsArgumentNullException() + public void Constructor_WithoutApplicationFeatureCommandHandler_ThrowsArgumentNullException() { + // Setup + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); + var viewCommandsMock = mocks.StrictMock(); + mocks.ReplayAll(); + // Call - TestDelegate test = () => new GuiContextMenuItemFactory(null, null, null, null); + TestDelegate test = () => new GuiContextMenuItemFactory(null, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object()); // Assert var message = Assert.Throws(test).Message; @@ -53,40 +63,49 @@ } [Test] - public void Constructor_WithoutDataObject_ThrowsArgumentNullException() + public void Constructor_WithoutImportCommandHandler_ThrowsArgumentNullException() { // Setup var applicationFeatureCommandHandler = mocks.StrictMock(); - var exportImportCommandHandler = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); // Call - TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, exportImportCommandHandler, viewCommandsMock, null); + TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, + null, + exportCommandHandlerMock, + viewCommandsMock, + null); // Assert var message = Assert.Throws(test).Message; - StringAssert.StartsWith(Resources.ContextMenuItemFactory_Can_not_create_context_menu_items_without_data, message); - StringAssert.EndsWith("dataObject", message); + StringAssert.StartsWith(Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_import_handler, message); + StringAssert.EndsWith("importCommandHandler", message); mocks.VerifyAll(); } [Test] - public void Constructor_WithoutExportImportHandler_ThrowsArgumentNullException() + public void Constructor_WithoutExportCommandHandler_ThrowsArgumentNullException() { // Setup var applicationFeatureCommandHandler = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); // Call - TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, null, viewCommandsMock, null); + TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, + importCommandHandlerMock, + null, + viewCommandsMock, + null); // Assert var message = Assert.Throws(test).Message; - StringAssert.StartsWith(Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_exportImport_handler, message); - StringAssert.EndsWith("exportImportCommandHandler", message); + StringAssert.StartsWith(Resources.GuiContextMenuItemFactory_Can_not_create_gui_context_menu_items_without_export_handler, message); + StringAssert.EndsWith("exportCommandHandler", message); mocks.VerifyAll(); } @@ -96,11 +115,16 @@ { // Setup var applicationFeatureCommandHandler = mocks.StrictMock(); - var exportImportCommandHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); mocks.ReplayAll(); // Call - TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, exportImportCommandHandlerMock, null, null); + TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, + importCommandHandlerMock, + exportCommandHandlerMock, + null, + null); // Assert var message = Assert.Throws(test).Message; @@ -115,12 +139,17 @@ { // Setup var applicationFeatureCommandHandler = mocks.StrictMock(); - var exportImportCommandHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); // Call - TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, exportImportCommandHandlerMock, viewCommandsMock, new object()); + TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + new object()); // Assert Assert.DoesNotThrow(test); @@ -129,17 +158,47 @@ } [Test] + public void Constructor_WithoutDataObject_ThrowsArgumentNullException() + { + // Setup + var applicationFeatureCommandHandler = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); + var viewCommandsMock = mocks.StrictMock(); + mocks.ReplayAll(); + + // Call + TestDelegate test = () => new GuiContextMenuItemFactory(applicationFeatureCommandHandler, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + null); + + // Assert + var message = Assert.Throws(test).Message; + StringAssert.StartsWith(Resources.ContextMenuItemFactory_Can_not_create_context_menu_items_without_data, message); + StringAssert.EndsWith("dataObject", message); + + mocks.VerifyAll(); + } + + [Test] public void CreateOpenItem_NoDataAvailableForView_MenuItemIsDisabled() { // Setup var commandHandlerMock = mocks.StrictMock(); - var exportImportCommandHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); viewCommandsMock.Expect(ch => ch.CanOpenViewFor(nodeData)).Return(false); mocks.ReplayAll(); - var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, exportImportCommandHandlerMock, viewCommandsMock, nodeData); + var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData); // Call var item = contextMenuFactory.CreateOpenItem(); @@ -159,14 +218,19 @@ { // Setup var commandHandlerMock = mocks.StrictMock(); - var exportImportCommandHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); viewCommandsMock.Expect(ch => ch.CanOpenViewFor(nodeData)).Return(true); viewCommandsMock.Expect(ch => ch.OpenView(nodeData)); mocks.ReplayAll(); - var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, exportImportCommandHandlerMock, viewCommandsMock, nodeData); + var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData); // Call var item = contextMenuFactory.CreateOpenItem(); @@ -188,18 +252,23 @@ { // Setup var commandHandlerMock = mocks.StrictMock(); - var exportImportCommandHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); - exportImportCommandHandlerMock.Expect(ch => ch.CanExportFrom(nodeData)).Return(hasExportersForNodeData); + exportCommandHandlerMock.Expect(ch => ch.CanExportFrom(nodeData)).Return(hasExportersForNodeData); if (hasExportersForNodeData) { - exportImportCommandHandlerMock.Expect(ch => ch.ExportFrom(nodeData)); + exportCommandHandlerMock.Expect(ch => ch.ExportFrom(nodeData)); } mocks.ReplayAll(); - var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, exportImportCommandHandlerMock, viewCommandsMock, nodeData); + var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData); // Call var item = contextMenuFactory.CreateExportItem(); @@ -221,18 +290,23 @@ { // Setup var commandHandlerMock = mocks.StrictMock(); - var exportImportCommandHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); - exportImportCommandHandlerMock.Expect(ch => ch.CanImportOn(nodeData)).Return(canImportOn); + importCommandHandlerMock.Expect(ch => ch.CanImportOn(nodeData)).Return(canImportOn); if (canImportOn) { - exportImportCommandHandlerMock.Expect(ch => ch.ImportOn(nodeData)); + importCommandHandlerMock.Expect(ch => ch.ImportOn(nodeData)); } mocks.ReplayAll(); - var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, exportImportCommandHandlerMock, viewCommandsMock, nodeData); + var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData); // Call var item = contextMenuFactory.CreateImportItem(); @@ -254,7 +328,8 @@ { // Setup var commandHandlerMock = mocks.StrictMock(); - var exportImportCommandHandlerMock = mocks.StrictMock(); + var importCommandHandlerMock = mocks.StrictMock(); + var exportCommandHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var nodeData = new object(); commandHandlerMock.Expect(ch => ch.CanShowPropertiesFor(nodeData)).Return(hasPropertyInfoForNodeData); @@ -263,7 +338,11 @@ commandHandlerMock.Expect(ch => ch.ShowPropertiesFor(nodeData)); } - var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, exportImportCommandHandlerMock, viewCommandsMock, nodeData); + var contextMenuFactory = new GuiContextMenuItemFactory(commandHandlerMock, + importCommandHandlerMock, + exportCommandHandlerMock, + viewCommandsMock, + nodeData); mocks.ReplayAll(); Index: Core/Common/test/Core.Common.Gui.Test/Core.Common.Gui.Test.csproj =================================================================== diff -u -re25d2b8b5045ee7549f406cfb8a4ea0f81ec7a7d -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Core/Common/test/Core.Common.Gui.Test/Core.Common.Gui.Test.csproj (.../Core.Common.Gui.Test.csproj) (revision e25d2b8b5045ee7549f406cfb8a4ea0f81ec7a7d) +++ Core/Common/test/Core.Common.Gui.Test/Core.Common.Gui.Test.csproj (.../Core.Common.Gui.Test.csproj) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -77,7 +77,6 @@ - Index: Ringtoets/Common/test/Ringtoets.Common.Forms.Test/TreeNodeInfos/RingtoetsContextMenuBuilderTest.cs =================================================================== diff -u -r1051f838aebbd5977351542027ce6330583b0d43 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Ringtoets/Common/test/Ringtoets.Common.Forms.Test/TreeNodeInfos/RingtoetsContextMenuBuilderTest.cs (.../RingtoetsContextMenuBuilderTest.cs) (revision 1051f838aebbd5977351542027ce6330583b0d43) +++ Ringtoets/Common/test/Ringtoets.Common.Forms.Test/TreeNodeInfos/RingtoetsContextMenuBuilderTest.cs (.../RingtoetsContextMenuBuilderTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -48,15 +48,21 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { var calculationGroup = new CalculationGroup(); - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -80,7 +86,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var failureMechanismMock = mocks.StrictMock(); @@ -90,7 +97,12 @@ { var calculationGroup = new CalculationGroup(); var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanismMock); - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -114,7 +126,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var calculationWithOutputMock = mocks.StrictMock(); @@ -131,7 +144,11 @@ }; using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -155,7 +172,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -164,7 +182,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -189,7 +212,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var calculationWithOutputMock = mocks.StrictMock(); calculationWithOutputMock.Expect(c => c.HasOutput).Return(true); @@ -202,7 +226,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismMock, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismMock, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -226,7 +255,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var failureMechanismMock = mocks.Stub(); failureMechanismMock.Stub(fm => fm.Calculations).Return(new List()); @@ -235,7 +265,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismMock, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismMock, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -262,7 +297,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var failureMechanismMock = mocks.StrictMock(); failureMechanismMock.Expect(fm => fm.IsRelevant).Return(isRelevant); @@ -272,7 +308,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismMock, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismMock, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -296,7 +337,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var calculationWithOutputMock = mocks.StrictMock(); @@ -306,7 +348,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationWithOutputMock, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationWithOutputMock, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -330,7 +377,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var calculationWithoutOutputMock = mocks.StrictMock(); @@ -340,7 +388,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationWithoutOutputMock, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationWithoutOutputMock, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -588,7 +641,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var failureMechanisMock = mocks.StrictMock(); @@ -599,7 +653,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculation, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculation, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -623,7 +682,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var failureMechanisMock = mocks.StrictMock(); @@ -634,7 +694,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculation, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculation, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "No valid data"; @@ -665,7 +730,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var failureMechanismMock = mocks.StrictMock(); @@ -676,7 +742,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculation, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculation, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -700,7 +771,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var failureMechanismMock = mocks.StrictMock(); @@ -711,7 +783,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculation, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculation, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "No valid data"; @@ -742,7 +819,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -756,12 +834,20 @@ } }; - var failureMechanism = new TestFailureMechanism(new[] { calculation }); + var failureMechanism = new TestFailureMechanism(new[] + { + calculation + }); var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -785,7 +871,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -796,7 +883,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -821,7 +913,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -835,12 +928,20 @@ } }; - var failureMechanism = new TestFailureMechanism(new[] { calculation }); + var failureMechanism = new TestFailureMechanism(new[] + { + calculation + }); var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; @@ -867,7 +968,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -878,7 +980,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; @@ -909,7 +1016,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -923,12 +1031,20 @@ } }; - var failureMechanism = new TestFailureMechanism(new[] { calculation }); + var failureMechanism = new TestFailureMechanism(new[] + { + calculation + }); var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -952,7 +1068,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -963,7 +1080,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -988,7 +1110,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -1002,12 +1125,20 @@ } }; - var failureMechanism = new TestFailureMechanism(new[] { calculation }); + var failureMechanism = new TestFailureMechanism(new[] + { + calculation + }); var calculationGroupContext = new TestCalculationGroupContext(calculationGroup, failureMechanism); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; @@ -1034,7 +1165,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); mocks.ReplayAll(); @@ -1045,7 +1177,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, calculationGroup, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + calculationGroup, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; @@ -1076,18 +1213,27 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); - var failureMechanism = new TestFailureMechanism(new[] { new TestCalculation() }); + var failureMechanism = new TestFailureMechanism(new[] + { + new TestCalculation() + }); var failureMechanismContext = new TestFailureMechanismContext(failureMechanism, assessmentSectionMock); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -1110,7 +1256,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); @@ -1121,7 +1268,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -1145,18 +1297,27 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); - var failureMechanism = new TestFailureMechanism(new[] { new TestCalculation() }); + var failureMechanism = new TestFailureMechanism(new[] + { + new TestCalculation() + }); var failureMechanismContext = new TestFailureMechanismContext(failureMechanism, assessmentSectionMock); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; @@ -1182,7 +1343,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); @@ -1193,7 +1355,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; @@ -1223,18 +1390,27 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); - var failureMechanism = new TestFailureMechanism(new[] { new TestCalculation() }); + var failureMechanism = new TestFailureMechanism(new[] + { + new TestCalculation() + }); var failureMechanismContext = new TestFailureMechanismContext(failureMechanism, assessmentSectionMock); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -1257,7 +1433,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); @@ -1268,7 +1445,12 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); // Call @@ -1292,26 +1474,35 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); - var failureMechanism = new TestFailureMechanism(new[] { new TestCalculation() }); + var failureMechanism = new TestFailureMechanism(new[] + { + new TestCalculation() + }); var failureMechanismContext = new TestFailureMechanismContext(failureMechanism, assessmentSectionMock); mocks.ReplayAll(); using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; // Call ContextMenuStrip result = ringtoetsContextMenuBuilder.AddValidateAllCalculationsInFailureMechanismItem( - failureMechanismContext, - null, + failureMechanismContext, + null, fm => errorMessage).Build(); // Assert @@ -1332,7 +1523,8 @@ // Setup var mocks = new MockRepository(); var applicationFeatureCommandsMock = mocks.StrictMock(); - var exportImportHandlerMock = mocks.StrictMock(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsMock = mocks.StrictMock(); var assessmentSectionMock = mocks.StrictMock(); @@ -1343,15 +1535,20 @@ using (var treeViewControl = new TreeViewControl()) { - var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, exportImportHandlerMock, viewCommandsMock, failureMechanismContext, treeViewControl); + var contextMenuBuilder = new ContextMenuBuilder(applicationFeatureCommandsMock, + importHandlerMock, + exportHandlerMock, + viewCommandsMock, + failureMechanismContext, + treeViewControl); var ringtoetsContextMenuBuilder = new RingtoetsContextMenuBuilder(contextMenuBuilder); var errorMessage = "Additional validation failed."; // Call ContextMenuStrip result = ringtoetsContextMenuBuilder.AddValidateAllCalculationsInFailureMechanismItem( - failureMechanismContext, - null, + failureMechanismContext, + null, fm => errorMessage).Build(); // Assert @@ -1369,11 +1566,11 @@ #endregion # region Nested types - + private class TestFailureMechanismContext : FailureMechanismContext { public TestFailureMechanismContext(IFailureMechanism wrappedFailureMechanism, IAssessmentSection parent) : - base(wrappedFailureMechanism, parent) { } + base(wrappedFailureMechanism, parent) {} } private class TestCalculationGroupContext : Observable, ICalculationContext Index: Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs =================================================================== diff -u -r4b647301c81c13810237268da2364d1568ad186d -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs) (revision 4b647301c81c13810237268da2364d1568ad186d) +++ Ringtoets/GrassCoverErosionInwards/test/Ringtoets.GrassCoverErosionInwards.Forms.Test/TreeNodeInfos/GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs (.../GrassCoverErosionInwardsCalculationGroupContextTreeNodeInfoTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -22,7 +22,6 @@ using System.IO; using System.Linq; using System.Windows.Forms; - using Core.Common.Base; using Core.Common.Base.Geometry; using Core.Common.Controls.TreeView; @@ -32,12 +31,9 @@ using Core.Common.Gui.Forms.MainWindow; using Core.Common.Gui.TestUtil.ContextMenu; using Core.Common.TestUtil; - using NUnit.Extensions.Forms; using NUnit.Framework; - using Rhino.Mocks; - using Ringtoets.Common.Data.AssessmentSection; using Ringtoets.Common.Data.Calculation; using Ringtoets.Common.Data.FailureMechanism; @@ -46,7 +42,6 @@ using Ringtoets.GrassCoverErosionInwards.Forms.PresentationObjects; using Ringtoets.GrassCoverErosionInwards.Plugin; using Ringtoets.HydraRing.Data; - using CoreCommonGuiResources = Core.Common.Gui.Properties.Resources; using RingtoetsFormsResources = Ringtoets.Common.Forms.Properties.Resources; using GrassCoverErosionInwardsFormResources = Ringtoets.GrassCoverErosionInwards.Forms.Properties.Resources; @@ -150,12 +145,12 @@ // Assert Assert.AreEqual(group.Children.Count, children.Length); - var calculationGroupContext = (GrassCoverErosionInwardsCalculationGroupContext)children[0]; + var calculationGroupContext = (GrassCoverErosionInwardsCalculationGroupContext) children[0]; Assert.AreSame(childGroup, calculationGroupContext.WrappedData); Assert.AreSame(failureMechanism, calculationGroupContext.FailureMechanism); Assert.AreSame(assessmentSectionMock, calculationGroupContext.AssessmentSection); Assert.AreSame(calculationItemMock, children[1]); - var calculationContext = (GrassCoverErosionInwardsCalculationContext)children[2]; + var calculationContext = (GrassCoverErosionInwardsCalculationContext) children[2]; Assert.AreSame(childCalculation, calculationContext.WrappedData); Assert.AreSame(assessmentSectionMock, calculationContext.AssessmentSection); } @@ -368,12 +363,18 @@ assessmentSectionMock); var applicationFeatureCommandHandlerStub = mocks.Stub(); - var exportImportHandlerStub = mocks.Stub(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsHandlerMock = mocks.StrictMock(); using (var treeViewControl = new TreeViewControl()) { - var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandlerStub, exportImportHandlerStub, viewCommandsHandlerMock, nodeData, treeViewControl); + var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandlerStub, + importHandlerMock, + exportHandlerMock, + viewCommandsHandlerMock, + nodeData, + treeViewControl); guiMock.Expect(g => g.Get(nodeData, treeViewControl)).Return(menuBuilder); mocks.ReplayAll(); @@ -416,12 +417,18 @@ assessmentSectionMock); var applicationFeatureCommandHandlerStub = mocks.Stub(); - var exportImportHandlerStub = mocks.Stub(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsHandlerMock = mocks.StrictMock(); using (var treeViewControl = new TreeViewControl()) { - var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandlerStub, exportImportHandlerStub, viewCommandsHandlerMock, nodeData, treeViewControl); + var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandlerStub, + importHandlerMock, + exportHandlerMock, + viewCommandsHandlerMock, + nodeData, + treeViewControl); guiMock.Expect(g => g.Get(nodeData, treeViewControl)).Return(menuBuilder); mocks.ReplayAll(); @@ -464,12 +471,18 @@ assessmentSectionMock); var applicationFeatureCommandHandlerStub = mocks.Stub(); - var exportImportHandlerStub = mocks.Stub(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsHandlerMock = mocks.StrictMock(); using (var treeViewControl = new TreeViewControl()) { - var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandlerStub, exportImportHandlerStub, viewCommandsHandlerMock, nodeData, treeViewControl); + var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandlerStub, + importHandlerMock, + exportHandlerMock, + viewCommandsHandlerMock, + nodeData, + treeViewControl); guiMock.Expect(g => g.Get(nodeData, treeViewControl)).Return(menuBuilder); mocks.ReplayAll(); @@ -883,8 +896,8 @@ DialogBoxHandler = (name, wnd) => { - var selectionDialog = (GrassCoverErosionInwardsDikeProfileSelectionDialog)new FormTester(name).TheObject; - var grid = (DataGridView)new ControlTester("DikeProfileDataGrid", selectionDialog).TheObject; + var selectionDialog = (GrassCoverErosionInwardsDikeProfileSelectionDialog) new FormTester(name).TheObject; + var grid = (DataGridView) new ControlTester("DikeProfileDataGrid", selectionDialog).TheObject; grid.Rows[0].Cells[0].Value = true; @@ -939,8 +952,8 @@ DialogBoxHandler = (name, wnd) => { - var selectionDialog = (GrassCoverErosionInwardsDikeProfileSelectionDialog)new FormTester(name).TheObject; - var grid = (DataGridView)new ControlTester("DikeProfileDataGrid", selectionDialog).TheObject; + var selectionDialog = (GrassCoverErosionInwardsDikeProfileSelectionDialog) new FormTester(name).TheObject; + var grid = (DataGridView) new ControlTester("DikeProfileDataGrid", selectionDialog).TheObject; grid.Rows[0].Cells[0].Value = true; @@ -972,7 +985,7 @@ { DikeProfiles = { - dikeProfile, + dikeProfile }, CalculationsGroup = { @@ -1003,8 +1016,8 @@ DialogBoxHandler = (name, wnd) => { - var selectionDialog = (GrassCoverErosionInwardsDikeProfileSelectionDialog)new FormTester(name).TheObject; - var grid = (DataGridView)new ControlTester("DikeProfileDataGrid", selectionDialog).TheObject; + var selectionDialog = (GrassCoverErosionInwardsDikeProfileSelectionDialog) new FormTester(name).TheObject; + var grid = (DataGridView) new ControlTester("DikeProfileDataGrid", selectionDialog).TheObject; grid.Rows[0].Cells[0].Value = true; Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs =================================================================== diff -u -rbd4baf94660bac291a78ee43b16afb20efc3e3c6 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs (.../PipingCalculationGroupContextTreeNodeInfoTest.cs) (revision bd4baf94660bac291a78ee43b16afb20efc3e3c6) +++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingCalculationGroupContextTreeNodeInfoTest.cs (.../PipingCalculationGroupContextTreeNodeInfoTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -189,11 +189,17 @@ assessmentSectionMock); var applicationFeatureCommandHandler = mocks.Stub(); - var exportImportHandler = mocks.Stub(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsHandler = mocks.StrictMock(); var treeViewControl = mocks.StrictMock(); - var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandler, exportImportHandler, viewCommandsHandler, nodeData, treeViewControl); + var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandler, + importHandlerMock, + exportHandlerMock, + viewCommandsHandler, + nodeData, + treeViewControl); gui.Expect(g => g.Get(nodeData, treeViewControl)).Return(menuBuilder); treeViewControl.Expect(tvc => tvc.CanRemoveNodeForData(nodeData)).Return(true); @@ -292,11 +298,17 @@ assessmentSectionMock); var applicationFeatureCommandHandler = mocks.Stub(); - var exportImportHandler = mocks.Stub(); + var importHandlerMock = mocks.StrictMock(); + var exportHandlerMock = mocks.StrictMock(); var viewCommandsHandler = mocks.StrictMock(); using (var treeViewControl = new TreeViewControl()) { - var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandler, exportImportHandler, viewCommandsHandler, nodeData, treeViewControl); + var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandler, + importHandlerMock, + exportHandlerMock, + viewCommandsHandler, + nodeData, + treeViewControl); gui.Expect(g => g.Get(nodeData, treeViewControl)).Return(menuBuilder); viewCommandsHandler.Expect(vc => vc.CanOpenViewFor(nodeData)).Return(true); @@ -991,7 +1003,7 @@ Geometry = { new Point2D(0.0, 0.0), new Point2D(5.0, 0.0) - }, + } } }, pipingFailureMechanism, @@ -1102,7 +1114,7 @@ Geometry = { new Point2D(0.0, 0.0), new Point2D(5.0, 0.0) - }, + } } }, pipingFailureMechanism, @@ -1274,7 +1286,7 @@ Geometry = { new Point2D(0.0, 0.0), new Point2D(5.0, 0.0) - }, + } } } }; Index: Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismContextTreeNodeInfoTest.cs =================================================================== diff -u -rbd4baf94660bac291a78ee43b16afb20efc3e3c6 -r92ce91281efab19772bd3e2d7ecea2c0a6c8ea97 --- Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismContextTreeNodeInfoTest.cs (.../PipingFailureMechanismContextTreeNodeInfoTest.cs) (revision bd4baf94660bac291a78ee43b16afb20efc3e3c6) +++ Ringtoets/Piping/test/Ringtoets.Piping.Forms.Test/TreeNodeInfos/PipingFailureMechanismContextTreeNodeInfoTest.cs (.../PipingFailureMechanismContextTreeNodeInfoTest.cs) (revision 92ce91281efab19772bd3e2d7ecea2c0a6c8ea97) @@ -22,7 +22,6 @@ using System; using System.Linq; using System.Windows.Forms; - using Core.Common.Base; using Core.Common.Base.Geometry; using Core.Common.Controls.TreeView; @@ -32,12 +31,9 @@ using Core.Common.Gui.Forms.MainWindow; using Core.Common.Gui.TestUtil.ContextMenu; using Core.Common.TestUtil; - using NUnit.Extensions.Forms; using NUnit.Framework; - using Rhino.Mocks; - using Ringtoets.Common.Data; using Ringtoets.Common.Data.AssessmentSection; using Ringtoets.Common.Data.Calculation; @@ -49,7 +45,6 @@ using Ringtoets.Piping.Forms.PresentationObjects; using Ringtoets.Piping.KernelWrapper.TestUtil; using Ringtoets.Piping.Plugin; - using RingtoetsCommonFormsResources = Ringtoets.Common.Forms.Properties.Resources; using RingtoetsDataResources = Ringtoets.Common.Data.Properties.Resources; using PipingFormsResources = Ringtoets.Piping.Forms.Properties.Resources; @@ -72,14 +67,6 @@ info = plugin.GetTreeNodeInfos().First(tni => tni.TagType == typeof(PipingFailureMechanismContext)); } - public override void TearDown() - { - plugin.Dispose(); - mocks.VerifyAll(); - - base.TearDown(); - } - [Test] public void Initialized_Always_ExpectedPropertiesSet() { @@ -152,42 +139,42 @@ // Assert Assert.AreEqual(3, children.Length); - var inputsFolder = (CategoryTreeFolder)children[0]; + var inputsFolder = (CategoryTreeFolder) children[0]; Assert.AreEqual("Invoer", inputsFolder.Name); Assert.AreEqual(TreeFolderCategory.Input, inputsFolder.Category); Assert.AreEqual(4, inputsFolder.Contents.Count); - var failureMechanismSectionsContext = (FailureMechanismSectionsContext)inputsFolder.Contents[0]; + var failureMechanismSectionsContext = (FailureMechanismSectionsContext) inputsFolder.Contents[0]; Assert.AreSame(pipingFailureMechanism, failureMechanismSectionsContext.WrappedData); Assert.AreSame(assessmentSection, failureMechanismSectionsContext.ParentAssessmentSection); - var surfaceLinesContext = (RingtoetsPipingSurfaceLinesContext)inputsFolder.Contents[1]; + var surfaceLinesContext = (RingtoetsPipingSurfaceLinesContext) inputsFolder.Contents[1]; Assert.AreSame(pipingFailureMechanism, surfaceLinesContext.WrappedData); Assert.AreSame(assessmentSection, surfaceLinesContext.AssessmentSection); - var stochasticSoilModelContext = (StochasticSoilModelContext)inputsFolder.Contents[2]; + var stochasticSoilModelContext = (StochasticSoilModelContext) inputsFolder.Contents[2]; Assert.AreSame(pipingFailureMechanism, stochasticSoilModelContext.FailureMechanism); Assert.AreSame(assessmentSection, stochasticSoilModelContext.AssessmentSection); - var commentContext = (CommentContext)inputsFolder.Contents[3]; + var commentContext = (CommentContext) inputsFolder.Contents[3]; Assert.AreSame(pipingFailureMechanism, commentContext.WrappedData); - var calculationsFolder = (PipingCalculationGroupContext)children[1]; + var calculationsFolder = (PipingCalculationGroupContext) children[1]; Assert.AreEqual("Berekeningen", calculationsFolder.WrappedData.Name); CollectionAssert.AreEqual(pipingFailureMechanism.CalculationsGroup.Children, calculationsFolder.WrappedData.Children); Assert.AreSame(pipingFailureMechanism.SurfaceLines, calculationsFolder.AvailablePipingSurfaceLines); Assert.AreEqual(pipingFailureMechanism.StochasticSoilModels, calculationsFolder.AvailableStochasticSoilModels); Assert.AreSame(pipingFailureMechanism, calculationsFolder.FailureMechanism); - var outputsFolder = (CategoryTreeFolder)children[2]; + var outputsFolder = (CategoryTreeFolder) children[2]; Assert.AreEqual("Oordeel", outputsFolder.Name); Assert.AreEqual(TreeFolderCategory.Output, outputsFolder.Category); - var failureMechanismScenariosContext = (PipingScenariosContext)outputsFolder.Contents[0]; + var failureMechanismScenariosContext = (PipingScenariosContext) outputsFolder.Contents[0]; Assert.AreSame(pipingFailureMechanism, failureMechanismScenariosContext.ParentFailureMechanism); Assert.AreSame(pipingFailureMechanism.CalculationsGroup, failureMechanismScenariosContext.WrappedData); - var failureMechanismResultsContext = (FailureMechanismSectionResultContext)outputsFolder.Contents[1]; + var failureMechanismResultsContext = (FailureMechanismSectionResultContext) outputsFolder.Contents[1]; Assert.AreSame(pipingFailureMechanism, failureMechanismResultsContext.FailureMechanism); Assert.AreSame(pipingFailureMechanism.SectionResults, failureMechanismResultsContext.WrappedData); } @@ -214,7 +201,7 @@ // Assert Assert.AreEqual(1, children.Length); - var commentContext = (CommentContext)children[0]; + var commentContext = (CommentContext) children[0]; Assert.AreSame(pipingFailureMechanism, commentContext.WrappedData); } @@ -317,12 +304,18 @@ var failureMechanismContext = new PipingFailureMechanismContext(failureMechanism, assessmentSection); var applicationFeatureCommandHandler = mocks.Stub(); - var exportImportHandler = mocks.Stub(); + var importCommandHandler = mocks.Stub(); + var exportCommandHandler = mocks.Stub(); var viewCommandsHandler = mocks.Stub(); using (var treeViewControl = new TreeViewControl()) { - var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandler, exportImportHandler, viewCommandsHandler, failureMechanismContext, treeViewControl); + var menuBuilder = new ContextMenuBuilder(applicationFeatureCommandHandler, + importCommandHandler, + exportCommandHandler, + viewCommandsHandler, + failureMechanismContext, + treeViewControl); var gui = mocks.StrictMock(); gui.Expect(cmp => cmp.Get(failureMechanismContext, treeViewControl)).Return(menuBuilder); @@ -717,6 +710,14 @@ } } + public override void TearDown() + { + plugin.Dispose(); + mocks.VerifyAll(); + + base.TearDown(); + } + private const int contextMenuRelevancyIndexWhenRelevant = 1; private const int contextMenuRelevancyIndexWhenNotRelevant = 0; private const int contextMenuValidateAllIndex = 3;