| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 | using System;using System.Linq;using Renci.SshNet.Common;using Renci.SshNet.Messages.Transport;using Microsoft.VisualStudio.TestTools.UnitTesting;namespace Renci.SshNet.Tests.Classes.Messages.Transport{    [TestClass]    public class IgnoreMessageTest    {        private Random _random;        private byte[] _data;        [TestInitialize]        public void Init()        {            _random = new Random();            _data = new byte[_random.Next(1, 10)];            _random.NextBytes(_data);        }        [TestMethod]        public void DefaultConstructor()        {            var target = new IgnoreMessage();            Assert.IsNotNull(target.Data);            Assert.AreEqual(0, target.Data.Length);        }        [TestMethod]        public void Constructor_Data()        {            var target = new IgnoreMessage(_data);            Assert.AreSame(_data, target.Data);        }        [TestMethod]        public void Constructor_Data_ShouldThrowArgumentNullExceptionWhenDataIsNull()        {            const byte[] data = null;            try            {                new IgnoreMessage(data);                Assert.Fail();            }            catch (ArgumentNullException ex)            {                Assert.IsNull(ex.InnerException);                Assert.AreEqual("data", ex.ParamName);            }        }        [TestMethod]        public void GetBytes()        {            var request = new IgnoreMessage(_data);            var bytes = request.GetBytes();            var expectedBytesLength = 0;            expectedBytesLength += 1; // Type            expectedBytesLength += 4; // Data length            expectedBytesLength += _data.Length; // Data            Assert.AreEqual(expectedBytesLength, bytes.Length);            var sshDataStream = new SshDataStream(bytes);            Assert.AreEqual(request.MessageNumber, sshDataStream.ReadByte());            Assert.AreEqual((uint) _data.Length, sshDataStream.ReadUInt32());            var actualData = new byte[_data.Length];            sshDataStream.Read(actualData, 0, actualData.Length);            Assert.IsTrue(_data.SequenceEqual(actualData));            Assert.IsTrue(sshDataStream.IsEndOfData);        }        [TestMethod]        public void Load_IgnoresData()        {            var ignoreMessage = new IgnoreMessage(_data);            var bytes = ignoreMessage.GetBytes();            var target = new IgnoreMessage();            target.Load(bytes, 1, bytes.Length - 1);            Assert.IsNotNull(target.Data);            Assert.AreEqual(0, target.Data.Length);        }    }}
 |