示例#1
0
        public void BuildPacketWithoutType()
        {
            // Arrange
            var packet = new RconPacket(null, "password");

            // Act
            var buffer = packet.GetBytes();
        }
示例#2
0
        public void BuildPacketFromBytes()
        {
            // Arrange
            var originalPacket = new RconPacket(PacketType.Auth, "password");

            // Act
            var buffer       = originalPacket.GetBytes();
            var parsedPacket = RconPacket.FromBytes(buffer);

            // Assert
            Assert.IsTrue(parsedPacket.Body.Equals(originalPacket.Body));
            Assert.IsTrue(parsedPacket.Id.Equals(originalPacket.Id));
        }
示例#3
0
        public void BuildPacketWithEmptyContent()
        {
            // Arrange
            var packet = new RconPacket(PacketType.Auth, string.Empty);

            // Act
            var buffer = packet.GetBytes();

            // Asert
            Assert.IsNotNull(buffer);
            Assert.IsTrue(buffer.Length == 14);              // 14 fixed bytes
            Assert.IsTrue(buffer[buffer.Length - 1] == 0x00 && buffer[buffer.Length - 2] == 0x00);
        }
示例#4
0
        public void BuildPacket()
        {
            // Arrange
            var packet = new RconPacket(PacketType.Auth, "password");

            // Act
            var buffer = packet.GetBytes();

            // Asert
            Assert.IsNotNull(buffer);
            Assert.IsTrue(buffer.Length == 22);              // 14 fixed bytes + 8 bytes for "password" string encoding
            Assert.IsTrue(buffer[0] == 0x12);
            Assert.IsTrue(buffer[buffer.Length - 1] == 0x00 && buffer[buffer.Length - 2] == 0x00);
        }