Пример #1
0
        public void LoadRegion()
        {
            var testLoginRequest = new Core.Connections.LoginRequest(
                new Core.Models.Position(100, 100),
                "Maria",
                "Musterfrau");
            var testJson = JsonConvert.SerializeObject(testLoginRequest);

            var testPackage = new Packet();

            testPackage.Content    = testJson;
            testPackage.MethodType = MethodType.Login;

            var testStream = this.GetStream();

            testPackage.Send(testStream);

            var testPackageIn = Packet.Receive(testStream);

            var loginData = JsonConvert.DeserializeObject <Core.Connections.LoginResponse>(testPackageIn.Content);

            var testRegion = new Core.Models.RegionPosition[]
            {
                new Core.Models.RegionPosition(100, 100),
            };

            var testRequest = new Core.Connections.LoadRegionsRequest(
                loginData.SessionID,
                new Core.Models.Position(100, 100),
                testRegion);

            testJson = JsonConvert.SerializeObject(testRequest);

            testPackage = new Packet();

            testPackage.Content    = testJson;
            testPackage.MethodType = MethodType.LoadEntities;

            testStream = this.GetStream();

            testPackage.Send(testStream);

            testPackageIn = Packet.Receive(testStream);

            var data = JsonConvert.DeserializeObject <Core.Connections.Response>(testPackageIn.Content);

            Assert.AreEqual(Core.Connections.Response.ReponseStatus.OK, data.Status);
        }
Пример #2
0
        /// <summary>
        /// Loads the entities and actions async from the server.
        /// </summary>
        /// <returns>The entities response from the server.</returns>
        /// <param name="currentGamePosition">Current game position.</param>
        /// <param name="regionPositions">Region positions.</param>
        public async Task<Core.Connections.Response> LoadEntitiesAsync(Core.Models.Position currentGamePosition, RegionPosition[] regionPositions)
        {            
            try
            {
                var request = new Core.Connections.LoadRegionsRequest(m_sessionID, currentGamePosition, regionPositions);
                var json = JsonConvert.SerializeObject(request);

                var jsonFromServer = await TcpConnection.Connector.SendAsync(Core.Connection.MethodType.LoadEntities, json);
                var entitiesResponse = JsonConvert.DeserializeObject<Core.Connections.Response>(jsonFromServer);

                if (entitiesResponse.Status == Core.Connections.Response.ReponseStatus.OK)
                {
                    return entitiesResponse;
                }
            }
            catch (Exception error)
            {
                Logging.Error(error.StackTrace);
                Logging.Error(error.Message);
            }

            return new Core.Connections.Response();
        }
Пример #3
0
        public void LoadRegion()
        {
            var testLoginRequest = new Core.Connections.LoginRequest(
                                        new Core.Models.Position(100, 100),
                                        "Maria",
                                        "Musterfrau");
            var testJson = JsonConvert.SerializeObject(testLoginRequest);

            var testPackage = new Packet();

            testPackage.Content = testJson;
            testPackage.MethodType = MethodType.Login;

            var testStream = this.GetStream();

            testPackage.Send(testStream);

            var testPackageIn = Packet.Receive(testStream);

            var loginData = JsonConvert.DeserializeObject<Core.Connections.LoginResponse>(testPackageIn.Content);

            var testRegion = new Core.Models.RegionPosition[]
            {
                    new Core.Models.RegionPosition(100, 100),
            };

            var testRequest = new Core.Connections.LoadRegionsRequest(
                                  loginData.SessionID,
                                  new Core.Models.Position(100, 100),
                                  testRegion);

            testJson = JsonConvert.SerializeObject(testRequest);

            testPackage = new Packet();

            testPackage.Content = testJson;
            testPackage.MethodType = MethodType.LoadEntities;

            testStream = this.GetStream();

            testPackage.Send(testStream);

            testPackageIn = Packet.Receive(testStream);

            var data = JsonConvert.DeserializeObject<Core.Connections.Response>(testPackageIn.Content);

            Assert.AreEqual(Core.Connections.Response.ReponseStatus.OK, data.Status);
        }