Skip to content

Commit 1e94070

Browse files
committed
Added test for:
#8
1 parent ec9fc0f commit 1e94070

File tree

3 files changed

+40
-1
lines changed

3 files changed

+40
-1
lines changed

src/Renci.SshNet.Tests/Classes/SessionTest_ConnectedBase.cs

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -105,7 +105,7 @@ protected virtual void Arrange()
105105
_keyExchangeMock.Setup(p => p.CreateCompressor()).Returns((Compressor) null);
106106
_keyExchangeMock.Setup(p => p.CreateDecompressor()).Returns((Compressor) null);
107107
_keyExchangeMock.Setup(p => p.Dispose());
108-
_serviceFactoryMock.Setup(p => p.CreateClientAuthentication()).Returns(_clientAuthenticationMock.Object);
108+
_serviceFactoryMock.Setup(p => p.CreateClientAuthentication()).Callback(ClientAuthentication_Callback).Returns(_clientAuthenticationMock.Object);
109109
_clientAuthenticationMock.Setup(p => p.Authenticate(ConnectionInfo, Session));
110110

111111
ServerListener = new AsyncSocketListener(_serverEndPoint);
@@ -119,6 +119,7 @@ protected virtual void Arrange()
119119
};
120120

121121
var counter = 0;
122+
122123
ServerListener.BytesReceived += (received, socket) =>
123124
{
124125
ServerBytesReceivedRegister.Add(received);
@@ -155,6 +156,10 @@ protected virtual void Arrange()
155156
Session.Connect();
156157
}
157158

159+
protected virtual void ClientAuthentication_Callback()
160+
{
161+
}
162+
158163
protected abstract void Act();
159164

160165
private class ServiceAcceptMessageBuilder
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
using System;
2+
using System.Net.Sockets;
3+
using System.Threading;
4+
using Microsoft.VisualStudio.TestTools.UnitTesting;
5+
using Renci.SshNet.Messages.Connection;
6+
7+
namespace Renci.SshNet.Tests.Classes
8+
{
9+
/// <summary>
10+
/// Test for https://github.com/sshnet/SSH.NET/pull/9.
11+
/// </summary>
12+
[TestClass]
13+
public class SessionTest_Connected_GlobalRequestMessageAfterAuthenticationRace : SessionTest_ConnectedBase
14+
{
15+
protected override void Act()
16+
{
17+
}
18+
19+
protected override void ClientAuthentication_Callback()
20+
{
21+
var globalRequestMessage = new GlobalRequestMessage(GlobalRequestName.TcpIpForward, false, "address", 70);
22+
var globalRequest = globalRequestMessage.GetPacket(8, null);
23+
ServerSocket.Send(globalRequest, 4, globalRequest.Length - 4, SocketFlags.None);
24+
}
25+
26+
[TestMethod]
27+
public void ErrorOccurredShouldNotBeRaised()
28+
{
29+
Assert.AreEqual(0, ErrorOccurredRegister.Count);
30+
}
31+
}
32+
}

src/Renci.SshNet.Tests/Renci.SshNet.Tests.csproj

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@
132132
<Compile Include="Classes\Common\ExtensionsTest_IsEqualTo_ByteArray.cs" />
133133
<Compile Include="Classes\Common\ExtensionsTest_Take_Count.cs" />
134134
<Compile Include="Classes\Common\ExtensionsTest_Take_OffsetAndCount.cs" />
135+
<Compile Include="Classes\Common\ExtensionsTest_ToGlobalRequestName.cs" />
135136
<Compile Include="Classes\Common\ExtensionsTest_TrimLeadingZeros.cs" />
136137
<Compile Include="Classes\ConnectionInfoTest_Authenticate_Failure.cs" />
137138
<Compile Include="Classes\ConnectionInfoTest_Authenticate_Success.cs" />
@@ -236,6 +237,7 @@
236237
<Compile Include="Classes\SessionTest_ConnectedBase.cs" />
237238
<Compile Include="Classes\SessionTest_Connected_ConnectionReset.cs" />
238239
<Compile Include="Classes\SessionTest_Connected_Disconnect.cs" />
240+
<Compile Include="Classes\SessionTest_Connected_GlobalRequestMessageAfterAuthenticationRace.cs" />
239241
<Compile Include="Classes\SessionTest_Connected_ServerSendsDisconnectMessage.cs" />
240242
<Compile Include="Classes\SessionTest_Connected_ServerSendsBadPacket.cs" />
241243
<Compile Include="Classes\SessionTest_Connected_ServerSendsDisconnectMessageAndShutsDownSocket.cs" />

0 commit comments

Comments
 (0)