ソースを参照

Update tests as we now load data from an offset as not to include the packet length and/or message type.

drieseng 9 年 前
コミット
1e802c795e

+ 2 - 2
src/Renci.SshNet.Tests/Classes/Messages/Connection/ChannelDataMessageTest.cs

@@ -43,7 +43,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Connection
         public void Constructor_LocalChannelNumberAndData_ShouldThrowArgumentNullExceptionWhenDataIsNull()
         {
             var localChannelNumber = (uint) new Random().Next(0, int.MaxValue);
-            byte[] data = null;
+            const byte[] data = null;
 
             try
             {
@@ -142,7 +142,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Connection
             var bytes = channelDataMessage.GetBytes();
             var target = new ChannelDataMessage();
 
-            target.Load(bytes);
+            target.Load(bytes, 1, bytes.Length - 1); // skip message type
 
             Assert.IsTrue(target.Data.SequenceEqual(data.Take(offset, size)));
             Assert.AreEqual(0, target.Offset);

+ 5 - 5
src/Renci.SshNet.Tests/Classes/Messages/Connection/ChannelOpen/ChannelOpenMessageTest.cs

@@ -124,7 +124,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Connection
             var target = new ChannelOpenMessage(localChannelNumber, initialWindowSize, maximumPacketSize, info);
             var bytes = target.GetBytes();
 
-            target.Load(bytes);
+            target.Load(bytes, 1, bytes.Length - 1); // skip message type
 
             Assert.AreEqual(info.ChannelType, _ascii.GetString(target.ChannelType));
             Assert.IsNotNull(target.Info);
@@ -151,7 +151,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Connection
             var target = new ChannelOpenMessage(localChannelNumber, initialWindowSize, maximumPacketSize, info);
             var bytes = target.GetBytes();
 
-            target.Load(bytes);
+            target.Load(bytes, 1, bytes.Length - 1); // skip message type
 
             Assert.AreEqual(info.ChannelType, _ascii.GetString(target.ChannelType));
             Assert.IsNotNull(target.Info);
@@ -178,7 +178,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Connection
             var target = new ChannelOpenMessage(localChannelNumber, initialWindowSize, maximumPacketSize, info);
             var bytes = target.GetBytes();
 
-            target.Load(bytes);
+            target.Load(bytes, 1, bytes.Length - 1); // skip message type
 
             Assert.AreEqual(info.ChannelType, _ascii.GetString(target.ChannelType));
             Assert.IsNotNull(target.Info);
@@ -202,7 +202,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Connection
             var target = new ChannelOpenMessage(localChannelNumber, initialWindowSize, maximumPacketSize, info);
             var bytes = target.GetBytes();
 
-            target.Load(bytes);
+            target.Load(bytes, 1, bytes.Length - 1); // skip message type
 
             Assert.AreEqual(info.ChannelType, _ascii.GetString(target.ChannelType));
             Assert.IsNotNull(target.Info);
@@ -238,7 +238,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Connection
 
             try
             {
-                target.Load(bytes);
+                target.Load(bytes, 1, bytes.Length - 1); // skip message type
                 Assert.Fail();
             }
             catch (NotSupportedException ex)

ファイルの差分が大きいため隠しています
+ 0 - 0
src/Renci.SshNet.Tests/Classes/Messages/Transport/KeyExchangeDhGroupExchangeReplyTest.cs


+ 1 - 1
src/Renci.SshNet.Tests/Classes/Messages/Transport/KeyExchangeDhGroupExchangeRequestTest.cs

@@ -60,7 +60,7 @@ namespace Renci.SshNet.Tests.Classes.Messages.Transport
             var bytes = request.GetBytes();
             var target = new KeyExchangeDhGroupExchangeRequest(0, 0, 0);
 
-            target.Load(bytes);
+            target.Load(bytes, 1, bytes.Length - 1);
 
             Assert.AreEqual(_minimum, target.Minimum);
             Assert.AreEqual(_preferred, target.Preferred);

ファイルの差分が大きいため隠しています
+ 0 - 0
src/Renci.SshNet.Tests/Classes/Messages/Transport/KeyExchangeInitMessageTest.cs


+ 1 - 4
src/Renci.SshNet.Tests/Classes/Sftp/Responses/SftpAttrsResponseTest.cs

@@ -3,7 +3,6 @@ using Microsoft.VisualStudio.TestTools.UnitTesting;
 using Renci.SshNet.Common;
 using Renci.SshNet.Sftp;
 using Renci.SshNet.Sftp.Responses;
-using Renci.SshNet.Tests.Common;
 
 namespace Renci.SshNet.Tests.Classes.Sftp.Responses
 {
@@ -40,9 +39,7 @@ namespace Renci.SshNet.Tests.Classes.Sftp.Responses
             var attributes = CreateSftpFileAttributes();
             var attributesBytes = attributes.GetBytes();
 
-            var sshDataStream = new SshDataStream(4 + 1 + 4 + attributesBytes.Length);
-            sshDataStream.Position = 4; // skip 4 bytes for SSH packet length
-            sshDataStream.WriteByte((byte) SftpMessageTypes.Attrs);
+            var sshDataStream = new SshDataStream(4 + attributesBytes.Length);
             sshDataStream.Write(_responseId);
             sshDataStream.Write(attributesBytes, 0, attributesBytes.Length);
 

+ 4 - 4
src/Renci.SshNet.Tests/Classes/Sftp/Responses/SftpDataResponseTest.cs

@@ -41,14 +41,14 @@ namespace Renci.SshNet.Tests.Classes.Sftp.Responses
         {
             var target = new SftpDataResponse(_protocolVersion);
 
-            var sshDataStream = new SshDataStream(4 + 1 + 4 + _data.Length);
-            sshDataStream.Position = 4; // skip 4 bytes for SSH packet length
-            sshDataStream.WriteByte((byte)SftpMessageTypes.Attrs);
+            var sshDataStream = new SshDataStream(4 + _data.Length);
             sshDataStream.Write(_responseId);
             sshDataStream.Write((uint) _data.Length);
             sshDataStream.Write(_data, 0, _data.Length);
 
-            target.Load(sshDataStream.ToArray());
+            var sshData = sshDataStream.ToArray();
+
+            target.Load(sshData);
 
             Assert.IsNotNull(target.Data);
             Assert.IsTrue(target.Data.SequenceEqual(_data));

+ 5 - 5
src/Renci.SshNet.Tests/Classes/Sftp/Responses/SftpExtendedReplyResponseTest.cs

@@ -36,9 +36,7 @@ namespace Renci.SshNet.Tests.Classes.Sftp.Responses
         {
             var target = new SftpExtendedReplyResponse(_protocolVersion);
 
-            var sshDataStream = new SshDataStream(4 + 1 + 4);
-            sshDataStream.Position = 4; // skip 4 bytes for SSH packet length
-            sshDataStream.WriteByte((byte) SftpMessageTypes.ExtendedReply);
+            var sshDataStream = new SshDataStream(4);
             sshDataStream.Write(_responseId);
 
             target.Load(sshDataStream.ToArray());
@@ -64,7 +62,7 @@ namespace Renci.SshNet.Tests.Classes.Sftp.Responses
 
             var sshDataStream = new SshDataStream(4 + 1 + 4 + 88);
             sshDataStream.Position = 4; // skip 4 bytes for SSH packet length
-            sshDataStream.WriteByte((byte) SftpMessageTypes.Attrs);
+            sshDataStream.WriteByte((byte)SftpMessageTypes.Attrs);
             sshDataStream.Write(_responseId);
             sshDataStream.Write(bsize);
             sshDataStream.Write(frsize);
@@ -78,8 +76,10 @@ namespace Renci.SshNet.Tests.Classes.Sftp.Responses
             sshDataStream.Write((ulong) 0x2);
             sshDataStream.Write(namemax);
 
+            var sshData = sshDataStream.ToArray();
+
             var target = new SftpExtendedReplyResponse(_protocolVersion);
-            target.Load(sshDataStream.ToArray());
+            target.Load(sshData, 5, sshData.Length - 5);
 
             var reply = target.GetReply<StatVfsReplyInfo>();
             Assert.IsNotNull(reply);

+ 1 - 3
src/Renci.SshNet.Tests/Classes/Sftp/Responses/SftpHandleResponseTest.cs

@@ -41,9 +41,7 @@ namespace Renci.SshNet.Tests.Classes.Sftp.Responses
         {
             var target = new SftpHandleResponse(_protocolVersion);
 
-            var sshDataStream = new SshDataStream(4 + 1 + 4 + _handle.Length);
-            sshDataStream.Position = 4; // skip 4 bytes for SSH packet length
-            sshDataStream.WriteByte((byte) SftpMessageTypes.Handle);
+            var sshDataStream = new SshDataStream(4 + _handle.Length);
             sshDataStream.Write(_responseId);
             sshDataStream.Write((uint) _handle.Length);
             sshDataStream.Write(_handle, 0, _handle.Length);

+ 0 - 6
src/Renci.SshNet/Sftp/Responses/ExtendedReplies/ExtendedReplyInfo.cs

@@ -7,12 +7,6 @@ namespace Renci.SshNet.Sftp.Responses
     {
         protected override void LoadData()
         {
-            // skip packet length
-            ReadUInt32();
-
-            //  skip message type
-            ReadByte();
-
             //  skip response id
             ReadUInt32();
         }

この差分においてかなりの量のファイルが変更されているため、一部のファイルを表示していません