diff --git a/mRemoteNGTests/Tree/ClickHandlers/OpenConnectionClickHandlerTests.cs b/mRemoteNGTests/Tree/ClickHandlers/OpenConnectionClickHandlerTests.cs index 5ceda527d..a6f19f96a 100644 --- a/mRemoteNGTests/Tree/ClickHandlers/OpenConnectionClickHandlerTests.cs +++ b/mRemoteNGTests/Tree/ClickHandlers/OpenConnectionClickHandlerTests.cs @@ -1,5 +1,6 @@ using System; using mRemoteNG.Connection; +using mRemoteNG.Container; using mRemoteNG.Tree; using NSubstitute; using NUnit.Framework; @@ -27,11 +28,24 @@ namespace mRemoteNGTests.Tree _connectionInitiator.Received().OpenConnection(connectionInfo); } + [Test] + public void DoesNothingWhenGivenContainerInfo() + { + _clickHandler.Execute(new ContainerInfo()); + _connectionInitiator.DidNotReceiveWithAnyArgs().OpenConnection(new ConnectionInfo()); + } + [Test] public void ExceptionThrownWhenConstructorGivenNullArg() { // ReSharper disable once ObjectCreationAsStatement Assert.Throws(() => new OpenConnectionClickHandler(null)); } + + [Test] + public void ThrowWhenExecuteGivenNullArg() + { + Assert.Throws(() => _clickHandler.Execute(null)); + } } } diff --git a/mRemoteNGTests/Tree/ClickHandlers/SwitchToConnectionClickHandlerTests.cs b/mRemoteNGTests/Tree/ClickHandlers/SwitchToConnectionClickHandlerTests.cs index d58bf9e9a..5cbdcd89c 100644 --- a/mRemoteNGTests/Tree/ClickHandlers/SwitchToConnectionClickHandlerTests.cs +++ b/mRemoteNGTests/Tree/ClickHandlers/SwitchToConnectionClickHandlerTests.cs @@ -1,5 +1,6 @@ using System; using mRemoteNG.Connection; +using mRemoteNG.Container; using mRemoteNG.Tree; using NSubstitute; using NUnit.Framework; @@ -27,11 +28,24 @@ namespace mRemoteNGTests.Tree _connectionInitiator.Received().SwitchToOpenConnection(connectionInfo); } + [Test] + public void DoesNothingWhenGivenContainerInfo() + { + _clickHandler.Execute(new ContainerInfo()); + _connectionInitiator.DidNotReceiveWithAnyArgs().SwitchToOpenConnection(new ConnectionInfo()); + } + [Test] public void ExceptionThrownWhenConstructorGivenNullArg() { // ReSharper disable once ObjectCreationAsStatement Assert.Throws(() => new SwitchToConnectionClickHandler(null)); } + + [Test] + public void ThrowWhenExecuteGivenNullArg() + { + Assert.Throws(() => _clickHandler.Execute(null)); + } } } \ No newline at end of file diff --git a/mRemoteV1/Tree/ClickHandlers/OpenConnectionClickHandler.cs b/mRemoteV1/Tree/ClickHandlers/OpenConnectionClickHandler.cs index 75d3f1972..078d94e81 100644 --- a/mRemoteV1/Tree/ClickHandlers/OpenConnectionClickHandler.cs +++ b/mRemoteV1/Tree/ClickHandlers/OpenConnectionClickHandler.cs @@ -17,7 +17,8 @@ namespace mRemoteNG.Tree public void Execute(ConnectionInfo clickedNode) { - if (clickedNode == null) return; + if (clickedNode == null) + throw new ArgumentNullException(nameof(clickedNode)); if (clickedNode.GetTreeNodeType() != TreeNodeType.Connection && clickedNode.GetTreeNodeType() != TreeNodeType.PuttySession) return; _connectionInitiator.OpenConnection(clickedNode); } diff --git a/mRemoteV1/Tree/ClickHandlers/SwitchToConnectionClickHandler.cs b/mRemoteV1/Tree/ClickHandlers/SwitchToConnectionClickHandler.cs index 7c950e130..5ed5ddf95 100644 --- a/mRemoteV1/Tree/ClickHandlers/SwitchToConnectionClickHandler.cs +++ b/mRemoteV1/Tree/ClickHandlers/SwitchToConnectionClickHandler.cs @@ -17,7 +17,8 @@ namespace mRemoteNG.Tree public void Execute(ConnectionInfo clickedNode) { - if (clickedNode == null) return; + if (clickedNode == null) + throw new ArgumentNullException(nameof(clickedNode)); if (clickedNode.GetTreeNodeType() != TreeNodeType.Connection && clickedNode.GetTreeNodeType() != TreeNodeType.PuttySession) return; _connectionInitiator.SwitchToOpenConnection(clickedNode); }