コード例 #1
0
        public void ProtocolExample2ShouldParseCorrectly()
        {
            byte[] request = HexStringToArray("04 59 55 4b 4f 4e 53 54 44 00"); // .YUKONSTD

            var requestMessage = new ClientUnicastInst();
            requestMessage.Read(request);

            Assert.Equal("YUKONSTD", requestMessage.InstanceName);
            Assert.Equal(request, requestMessage.Write());

            byte[] response = HexStringToArray(@"05 58 00 53 65 72 76 65 72 4e 61 6d 65 3b 49 4c
                                                 53 55 4e 47 31 3b 49 6e 73 74 61 6e 63 65 4e 61
                                                 6d 65 3b 59 55 4b 4f 4e 53 54 44 3b 49 73 43 6c
                                                 75 73 74 65 72 65 64 3b 4e 6f 3b 56 65 72 73 69
                                                 6f 6e 3b 39 2e 30 30 2e 31 33 39 39 2e 30 36 3b
                                                 74 63 70 3b 35 37 31 33 37 3b 3b");

            var responseMessage = new ServerResponse();
            responseMessage.Read(response);

            var expected = new[] {
                new Dictionary<string, string> {
                    {"ServerName", "ILSUNG1"},
                    {"InstanceName", "YUKONSTD"},
                    {"IsClustered", "No"},
                    {"Version", "9.00.1399.06"},
                    {"tcp", "57137"}
                }
            };

            Assert.Equal(expected, responseMessage.ResponseList);
            Assert.Equal(response, responseMessage.Write());
        }
コード例 #2
0
        public void CorrectMessageShouldParseSuccessfully()
        {
            var message = new ClientUnicastInst();
            message.Read(new byte[] {
                0x4, 0x41, 0x41, 0x41, 0x0
            });

            Assert.Equal("AAA", message.InstanceName);
        }
コード例 #3
0
 public void InvalidMethodLengthShouldThrow()
 {
     var message = new ClientUnicastInst();
     Assert.Throws<InvalidMessageLengthException>(() => message.Read(new byte[0]));
     Assert.Throws<InvalidMessageLengthException>(() => message.Read(new byte[] {
         0x4,
         0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
         0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
         0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
         0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41, 0x41,
         0x0
     }));
 }
コード例 #4
0
 public void MissingNullTerminatorShouldThrow()
 {
     var message = new ClientUnicastInst();
     Assert.Throws<InvalidMessageException>(() => message.Read(new byte[] { 0x4 }));
     Assert.Throws<InvalidMessageException>(() => message.Read(new byte[] { 0x4, 0x41 }));
 }
コード例 #5
0
 public void InvalidTypeShouldThrow()
 {
     var message = new ClientUnicastInst();
     Assert.Throws<InvalidMessageException>(() => message.Read(new byte[] { 0x99 }));
 }