public void CreateUpdateItem_CanUpdateOn_CausesUpdateToStartWhenClicked() { // Setup var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); updateCommandHandler.Expect(ch => ch.CanUpdateOn(nodeData)).Return(true); updateCommandHandler.Expect(ch => ch.UpdateOn(nodeData)); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); ToolStripItem item = contextMenuFactory.CreateUpdateItem(); // Call item.PerformClick(); // Assert mocks.VerifyAll(); }
public void CreatePropertiesItem_Always_ItemWithPropertiesSet(bool hasPropertyInfoForNodeData) { // Setup var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); commandHandler.Expect(ch => ch.CanShowPropertiesFor(nodeData)).Return(hasPropertyInfoForNodeData); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); mocks.ReplayAll(); // Call ToolStripItem item = contextMenuFactory.CreatePropertiesItem(); // Assert Assert.AreEqual("Ei&genschappen", item.Text); Assert.AreEqual("Toon de eigenschappen in het Eigenschappenpaneel.", item.ToolTipText); TestHelper.AssertImagesAreEqual(Resources.PropertiesHS, item.Image); Assert.AreEqual(hasPropertyInfoForNodeData, item.Enabled); mocks.VerifyAll(); }
public void CreateImportItemWithAllParameters_InvalidTextParameter_ThrowArgumentException(string text) { // Setup const string toolTip = "Import tooltip"; Image image = Resources.ImportIcon; var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); // Call void Call() => contextMenuFactory.CreateImportItem(text, toolTip, image, Enumerable.Empty <ImportInfo>()); // Assert var exception = TestHelper.AssertThrowsArgumentExceptionAndTestMessage <ArgumentException>(Call, "Text should be set."); Assert.AreEqual("text", exception.ParamName); mocks.VerifyAll(); }
public void CreateUpdateItem_Always_ItemWithPropertiesSet(bool canUpdateOn) { // Setup var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); updateCommandHandler.Expect(ch => ch.CanUpdateOn(nodeData)).Return(canUpdateOn); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); // Call ToolStripItem item = contextMenuFactory.CreateUpdateItem(); // Assert Assert.AreEqual("&Bijwerken...", item.Text); Assert.AreEqual("Werk de geïmporteerde gegevens bij met nieuwe gegevens vanuit een bestand.", item.ToolTipText); TestHelper.AssertImagesAreEqual(Resources.RefreshIcon, item.Image); Assert.AreEqual(canUpdateOn, item.Enabled); mocks.VerifyAll(); }
public void CreateImportItemWithAllParameters_ImageParameterNull_ThrowArgumentNullException() { // Setup const string text = "Import"; const string toolTip = "Import tooltip"; var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); // Call void Call() => contextMenuFactory.CreateImportItem(text, toolTip, null, Enumerable.Empty <ImportInfo>()); // Assert var exception = Assert.Throws <ArgumentNullException>(Call); Assert.AreEqual("image", exception.ParamName); mocks.VerifyAll(); }
public void CreateImportItemWithImportInfosParameter_SupportedImportInfo_CausesImportToStartWhenClicked() { // Setup var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); ImportInfo[] importInfos = { new ImportInfo() }; importCommandHandler.Expect(ich => ich.ImportOn(nodeData, importInfos)); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); ToolStripItem item = contextMenuFactory.CreateImportItem(importInfos); // Call item.PerformClick(); // Assert mocks.VerifyAll(); }
public void CreateExportItem_Always_ItemWithPropertiesSet(bool hasExportersForNodeData) { // Setup var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); exportCommandHandler.Expect(ch => ch.CanExportFrom(nodeData)).Return(hasExportersForNodeData); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); // Call ToolStripItem item = contextMenuFactory.CreateExportItem(); // Assert Assert.AreEqual("&Exporteren...", item.Text); Assert.AreEqual("Exporteer de gegevens naar een bestand.", item.ToolTipText); TestHelper.AssertImagesAreEqual(Resources.ExportIcon, item.Image); Assert.AreEqual(hasExportersForNodeData, item.Enabled); mocks.VerifyAll(); }
public void CreateOpenItem_Always_ItemWithPropertiesSet(bool canOpenView) { // Setup var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); viewCommands.Expect(ch => ch.CanOpenViewFor(nodeData)).Return(canOpenView); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); // Call ToolStripItem item = contextMenuFactory.CreateOpenItem(); // Assert Assert.AreEqual("&Openen", item.Text); Assert.AreEqual("Open de gegevens in een nieuw documentvenster.", item.ToolTipText); TestHelper.AssertImagesAreEqual(Resources.OpenIcon, item.Image); Assert.AreEqual(canOpenView, item.Enabled); mocks.VerifyAll(); }
public void CreateImportItemWithAllParameters_Always_ItemWithPropertiesSet(bool hasImportersForNodeData) { // Setup const string text = "Import"; const string toolTip = "Import tooltip"; Image image = Resources.ImportIcon; var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); mocks.ReplayAll(); ImportInfo[] importInfos = hasImportersForNodeData ? new[] { new ImportInfo() } : new ImportInfo[0]; var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); // Call ToolStripItem item = contextMenuFactory.CreateImportItem(text, toolTip, image, importInfos); // Assert Assert.AreEqual(text, item.Text); Assert.AreEqual(toolTip, item.ToolTipText); TestHelper.AssertImagesAreEqual(image, item.Image); Assert.AreEqual(hasImportersForNodeData, item.Enabled); mocks.VerifyAll(); }
public void CreateImportItemWithTextualParameters_SupportedImportInfo_CausesImportToStartWhenClicked() { // Setup const string text = "Import"; const string toolTip = "Import tooltip"; Image image = Resources.ImportIcon; var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); ImportInfo[] importInfos = { new ImportInfo() }; importCommandHandler.Expect(ich => ich.GetSupportedImportInfos(nodeData)).Return(importInfos); importCommandHandler.Expect(ich => ich.ImportOn(nodeData, importInfos)); mocks.ReplayAll(); var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); ToolStripItem item = contextMenuFactory.CreateImportItem(text, toolTip, image); // Call item.PerformClick(); // Assert mocks.VerifyAll(); }
public void CreateImportItemWithImportInfosParameter_Always_ItemWithPropertiesSet(bool hasImportersForNodeData) { // Setup var commandHandler = mocks.StrictMock <IApplicationFeatureCommands>(); var importCommandHandler = mocks.StrictMock <IImportCommandHandler>(); var exportCommandHandler = mocks.StrictMock <IExportCommandHandler>(); var updateCommandHandler = mocks.StrictMock <IUpdateCommandHandler>(); var viewCommands = mocks.StrictMock <IViewCommands>(); var nodeData = new object(); mocks.ReplayAll(); ImportInfo[] importInfos = hasImportersForNodeData ? new[] { new ImportInfo() } : new ImportInfo[0]; var contextMenuFactory = new GuiContextMenuItemFactory(commandHandler, importCommandHandler, exportCommandHandler, updateCommandHandler, viewCommands, nodeData); // Call ToolStripItem item = contextMenuFactory.CreateImportItem(importInfos); // Assert Assert.AreEqual("&Importeren...", item.Text); Assert.AreEqual("Importeer de gegevens vanuit een bestand.", item.ToolTipText); TestHelper.AssertImagesAreEqual(Resources.ImportIcon, item.Image); Assert.AreEqual(hasImportersForNodeData, item.Enabled); mocks.VerifyAll(); }