public void SQP_SerializeQueryResponseHeader_NoError() { var id = (uint)1337; var version = (ushort)12345; var packet = (byte)3; var last = (byte)9; var snd = new QueryResponseHeader(); snd.Header.ChallangeId = id; snd.Version = version; snd.CurrentPacket = packet; snd.LastPacket = last; snd.ToStream(ref writer); var rcv = new QueryResponseHeader(); rcv.FromStream(ref reader); Assert.AreEqual((byte)SQPMessageType.QueryResponse, rcv.Header.Type); Assert.AreEqual(id, (uint)rcv.Header.ChallangeId); Assert.AreEqual(version, rcv.Version); Assert.AreEqual(packet, rcv.CurrentPacket); Assert.AreEqual(last, rcv.LastPacket); }
public void SQP_SerializeServerInfo_NoError() { var current = (ushort)34; var max = (ushort)35; var port = (ushort)35001; var build = "2018.3"; var header = new QueryResponseHeader(); header.Header.ChallangeId = 1337; header.Version = 12345; header.CurrentPacket = 12; header.LastPacket = 13; var snd = new SQP.ServerInfo(); snd.QueryHeader = header; snd.ServerInfoData.CurrentPlayers = current; snd.ServerInfoData.MaxPlayers = max; snd.ServerInfoData.ServerName = "Server"; snd.ServerInfoData.GameType = "GameType"; snd.ServerInfoData.BuildId = "2018.3"; snd.ServerInfoData.Map = "Level0"; snd.ServerInfoData.Port = port; snd.ToStream(ref writer); var rcv = new SQP.ServerInfo(); reader = new DataStreamReader(writer, 0, writer.Length); context = default(DataStreamReader.Context); rcv.FromStream(reader, ref context); Assert.AreEqual((byte)SQPMessageType.QueryResponse, rcv.QueryHeader.Header.Type); Assert.AreEqual((uint)header.Header.ChallangeId, (uint)rcv.QueryHeader.Header.ChallangeId); Assert.AreEqual(header.Version, rcv.QueryHeader.Version); Assert.AreEqual(header.CurrentPacket, rcv.QueryHeader.CurrentPacket); Assert.AreEqual(header.LastPacket, rcv.QueryHeader.LastPacket); Assert.AreEqual(current, (ushort)rcv.ServerInfoData.CurrentPlayers); Assert.AreEqual(max, (ushort)rcv.ServerInfoData.MaxPlayers); Assert.AreEqual(port, (ushort)rcv.ServerInfoData.Port); Assert.AreEqual(build, rcv.ServerInfoData.BuildId); }