public void itShouldShowOpenFileDialogOnCtrlO() { var mockOpenDialog = new MockOpenFileDialog(); var sut = new Main().WithOpenFileDialog(mockOpenDialog); sut.AcceptKeys(Keys.Control | Keys.O); Assert.IsTrue(mockOpenDialog.OpenDialogShown); }
public void itShouldLetWorkspaceDecideIfItClosesOrNotWhenNotForcedClose(bool isDirty, bool expectedClosed) { var sut = new Main(); var mockWorkspace = new MockQueryWorkspaceView(isDirty); sut.AddWorkspace("test", mockWorkspace); sut.AcceptKeys(Keys.Control | Keys.W); Assert.IsTrue(mockWorkspace.WasClosed == expectedClosed); }
public void itShouldForceCloseWorkspaceOnCtrlQ() { var sut = new Main(); var mockWorkspace = new MockQueryWorkspaceView(true); sut.AddWorkspace("test", mockWorkspace); sut.AcceptKeys(Keys.Control | Keys.Q); Assert.IsTrue(mockWorkspace.WasClosed); }
public void itShouldToggleParametersPaneVisibility() { var sut = new Main(); var mockWorkspace = new MockQueryWorkspaceView(new MockCommandDispatcher()); sut.AddWorkspace("test", mockWorkspace); sut.AcceptKeys(Keys.Control | Keys.N); // Output pane visible by default after opening new workspace Assert.IsTrue(sut.ActiveQueryWorkspace.IsParametersPaneVisible); // Toggle off sut.AcceptKeys(Keys.Control | Keys.P); // For some odd reason, mockWorkspace.IsParametersPaneVisible is TRUE here!!! Assert.IsFalse(sut.ActiveQueryWorkspace.IsParametersPaneVisible); // Toggle back on sut.AcceptKeys(Keys.Control | Keys.P); Assert.IsTrue(sut.ActiveQueryWorkspace.IsParametersPaneVisible); }
public void itShouldToggleResultsPaneVisibility() { var sut = new Main(); var mockWorkspace = new MockQueryWorkspaceView(new MockCommandDispatcher()) .WithRunQueryAsync(false); sut.AddWorkspace("test", mockWorkspace); sut.AcceptKeys(Keys.Control | Keys.E); // Output pane visible by default after command execution Assert.IsTrue(mockWorkspace.IsResultsPaneVisible); // Toggle off sut.AcceptKeys(Keys.Control | Keys.R); Assert.IsFalse(mockWorkspace.IsResultsPaneVisible); // Toggle back on sut.AcceptKeys(Keys.Control | Keys.R); Assert.IsTrue(mockWorkspace.IsResultsPaneVisible); }
public void itShouldAddNewWorkspaceToMRUOnSave() { var sut = new Main().WithAppStateStore(new MockAppStateStore()); var workspaceFile = "TestFile.qws"; var workspace1 = new MockQueryWorkspaceView(workspaceFile); sut.AddWorkspace("test1", workspace1); sut.AcceptKeys(Keys.Control | Keys.S); Assert.IsTrue(workspace1.DidSaveWorkspace); Assert.IsTrue(sut.MRUItems[0].Text.Contains(workspaceFile)); }
public void itShouldCycleWorkspaceTabsBackwardOnCtrlShiftT() { var sut = new Main(); var workspace1 = new MockQueryWorkspaceView(); var workspace2 = new MockQueryWorkspaceView(); var workspace3 = new MockQueryWorkspaceView(); sut.AddWorkspace("test1", workspace1); sut.AddWorkspace("test2", workspace2); sut.AddWorkspace("test3", workspace3); sut.AcceptKeys(Keys.Control | Keys.Shift | Keys.T); Assert.AreEqual(sut.ActiveQueryWorkspace, workspace2); sut.AcceptKeys(Keys.Control | Keys.Shift | Keys.T); Assert.AreEqual(sut.ActiveQueryWorkspace, workspace1); sut.AcceptKeys(Keys.Control | Keys.Shift | Keys.T); Assert.AreEqual(sut.ActiveQueryWorkspace, workspace3); }
public void itShouldApplyFilterOnCtrlF() { var sut = new Main(); var workspace1 = new MockQueryWorkspaceView(); var workspace2 = new MockQueryWorkspaceView(); sut.AddWorkspace("test1", workspace1); sut.AddWorkspace("test2", workspace2); sut.AcceptKeys(Keys.Control | Keys.F); Assert.IsFalse(workspace1.DidApplyFilter); Assert.IsTrue(workspace2.DidApplyFilter); }
public void itShouldToggleOutputPaneVisibility() { var sut = new Main(); var mockWorkspace = new MockQueryWorkspaceView(new MockCommandDispatcher()) .WithRunQueryAsync(false); sut.AddWorkspace("test", mockWorkspace); sut.AcceptKeys(Keys.Control | Keys.E); var isOutputPaneVisible = mockWorkspace.IsOutputPaneVisible; // Toggle sut.AcceptKeys(Keys.Control | Keys.Shift | Keys.O); Assert.AreNotEqual(isOutputPaneVisible, mockWorkspace.IsOutputPaneVisible); isOutputPaneVisible = mockWorkspace.IsOutputPaneVisible; // Toggle sut.AcceptKeys(Keys.Control | Keys.Shift | Keys.O); Assert.AreNotEqual(isOutputPaneVisible, mockWorkspace.IsOutputPaneVisible); }
public void itShouldRunQueryOnCtrlE() { var sut = new Main(); var workspace1 = new MockQueryWorkspaceView(new MockCommandDispatcher()); var workspace2 = new MockQueryWorkspaceView(new MockCommandDispatcher()); sut.AddWorkspace("test1", workspace1); sut.AddWorkspace("test2", workspace2); sut.AcceptKeys(Keys.Control | Keys.E); Assert.IsFalse(workspace1.DidRunQuery); Assert.IsTrue(workspace2.DidRunQuery); }
public void itShouldSaveWorkspaceOnCtrlS() { var sut = new Main(); var workspace1 = new MockQueryWorkspaceView(); var workspace2 = new MockQueryWorkspaceView(); var workspace3 = new MockQueryWorkspaceView(); sut.AddWorkspace("test1", workspace1); sut.AddWorkspace("test2", workspace2); sut.AddWorkspace("test3", workspace3); sut.AcceptKeys(Keys.Control | Keys.S); Assert.IsFalse(workspace1.DidSaveWorkspace); Assert.IsFalse(workspace2.DidSaveWorkspace); Assert.IsTrue(workspace3.DidSaveWorkspace); }
public void itShouldCloneActiveWorkspaceOnCtrlD() { var sut = new Main(); var model = new Workspace { ConnectionString = "qwerty", Query = "SELECT * FROM Test", Parameters = "@1 = a @2 = b" }; sut.AddWorkspace("test", new QueryWorkspaceView(model)); Assert.AreEqual(1, sut.Workspaces.Count); sut.AcceptKeys(Keys.Control | Keys.D); Assert.IsTrue(sut.Workspaces.First().Model.HasSameValueAs(sut.Workspaces.Last().Model)); }