Exemplo n.º 1
0
        public void CyclePositionedCorrectlyInBounds()
        {
            var gameConfig = new GameConfiguration(new CycleConfiguration(), new MapConfiguration());
            var map = new Map(gameConfig.MapConfig);
            var startPosition = new Vector3(0, gameConfig.CycleConfig.Y_OFFSET, 0);
            var cycle = new Cycle(1, startPosition, new Vector3(1, 0, 0), Math.PI + Math.PI * .5, 0xff0000, map, gameConfig);
            var requestValidator = new RequestValidator(map);

            cycle.MovementController.RequestedPosition = new Vector3(gameConfig.MapConfig.MAP_SIZE.Width * .5 + gameConfig.MapConfig.FLOOR_TILE_SIZE.Width * 10, gameConfig.CycleConfig.Y_OFFSET, 0);
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(new Vector3(4950, gameConfig.CycleConfig.Y_OFFSET, 0)));
            Assert.True(map.Utilities.ToMapLocation(cycle.MovementController.Position).SameAs(new MapLocation(100, 199)));

            cycle.MovementController.Position = startPosition;
            cycle.MovementController.RequestedPosition = new Vector3(-gameConfig.MapConfig.MAP_SIZE.Width * .5 - gameConfig.MapConfig.FLOOR_TILE_SIZE.Width * 10, gameConfig.CycleConfig.Y_OFFSET, 0);
            cycle.MovementController.Velocity = new Vector3(-1, 0, 0);
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            cycle.MovementController.Rotation = Math.PI * .5;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(new Vector3(-5000, gameConfig.CycleConfig.Y_OFFSET, 0)));
            Assert.True(map.Utilities.ToMapLocation(cycle.MovementController.Position).SameAs(new MapLocation(100, 0)));

            cycle.MovementController.Position = startPosition;
            cycle.MovementController.RequestedPosition = new Vector3(-gameConfig.MapConfig.MAP_SIZE.Width * .5, gameConfig.CycleConfig.Y_OFFSET, 0);
            var expected = cycle.MovementController.RequestedPosition.Clone();
            cycle.MovementController.Velocity = new Vector3(-1, 0, 0);
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            cycle.MovementController.Rotation = Math.PI * .5;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(expected));
            Assert.True(map.Utilities.ToMapLocation(cycle.MovementController.Position).SameAs(new MapLocation(100, 0)));

            cycle.MovementController.Position = startPosition;
            cycle.MovementController.RequestedPosition = new Vector3(gameConfig.MapConfig.MAP_SIZE.Width * .25, gameConfig.CycleConfig.Y_OFFSET, 0);
            expected = cycle.MovementController.RequestedPosition.Clone();
            cycle.MovementController.Velocity = new Vector3(1, 0, 0);
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            cycle.MovementController.Rotation = Math.PI + Math.PI * .5;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(expected));
            Assert.True(map.Utilities.ToMapLocation(cycle.MovementController.Position).SameAs(new MapLocation(100, 150)));

            cycle.MovementController.Position = startPosition;
            cycle.MovementController.RequestedPosition = startPosition;
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(startPosition));
            Assert.True(map.Utilities.ToMapLocation(cycle.MovementController.Position).SameAs(map.Utilities.ToMapLocation(startPosition)));
        }
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            var validator = new RequestValidator();

            var context = ((HttpApplication)filterContext.HttpContext.GetService(typeof(HttpApplication))).Context;

            if (!validator.IsValidRequest(context, AuthToken, UrlOverride))
            {
                filterContext.HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden;
                filterContext.HttpContext.Response.SuppressContent = true;
                filterContext.HttpContext.ApplicationInstance.CompleteRequest();
            }

            base.OnActionExecuting(filterContext);
        }
Exemplo n.º 3
0
        public void CyclePositionedCorrectlyInBoundsAndColliding()
        {
            var gameConfig = new GameConfiguration(new CycleConfiguration(), new MapConfiguration());
            var map = new Map(gameConfig.MapConfig);
            var startPosition = new Vector3(0, gameConfig.CycleConfig.Y_OFFSET, 0);
            var cycle = new Cycle(1, startPosition, new Vector3(1, 0, 0), Math.PI + Math.PI * .5, 0xff0000, map, gameConfig);
            var requestValidator = new RequestValidator(map);
            var collision = startPosition.Clone();
            collision.x = gameConfig.MapConfig.MAP_SIZE.Width * .5 - gameConfig.MapConfig.FLOOR_TILE_SIZE.Width * 3;

            cycle.MovementController.RequestedPosition = new Vector3(gameConfig.MapConfig.MAP_SIZE.Width * .5 + gameConfig.MapConfig.FLOOR_TILE_SIZE.Width * 10, gameConfig.CycleConfig.Y_OFFSET, 0);
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            map[map.Utilities.ToMapLocation(startPosition)] = -cycle.ID;
            map[map.Utilities.ToMapLocation(collision)] = 5;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(collision));
        }
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            var validator = new RequestValidator();

            var context = ((HttpApplication)filterContext.HttpContext.GetService(typeof(HttpApplication))).Context;

            if (!validator.IsValidRequest(context, AuthToken, UrlOverride))
            {
                //This did not actually stop the Action execution, so its been replaced by the Result below
                //filterContext.HttpContext.Response.StatusCode = (int)HttpStatusCode.Forbidden;
                //filterContext.HttpContext.Response.SuppressContent = true;
                //filterContext.HttpContext.ApplicationInstance.CompleteRequest();

                filterContext.Result = new HttpStatusCodeResult(HttpStatusCode.Forbidden);
            }

            base.OnActionExecuting(filterContext);
        }
Exemplo n.º 5
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("device_bind_req_vo", this.DeviceBindReqVo);
 }
 public void Validate()
 {
     RequestValidator.ValidateRequired("itemid", ItemId);
 }
Exemplo n.º 7
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("media_category_id", this.MediaCategoryId);
     RequestValidator.ValidateRequired("media_category_name", this.MediaCategoryName);
 }
Exemplo n.º 8
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("tradeid", TradeId);
     RequestValidator.ValidateMinValue("tradeid", TradeId, 1);
 }
Exemplo n.º 9
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("product_id", this.ProductId);
     RequestValidator.ValidateRequired("properties", this.Properties);
 }
Exemplo n.º 10
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("campaign_id", this.CampaignId);
 }
 public void Validate()
 {
     RequestValidator.ValidateRequired("text", this.Text);
     RequestValidator.ValidateRequired("title", this.Title);
 }
Exemplo n.º 12
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("fields", this.Fields);
     RequestValidator.ValidateRequired("nick", this.Nick);
 }
Exemplo n.º 13
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("auth_code", this.AuthCode);
     RequestValidator.ValidateRequired("role_type", this.RoleType);
 }
 public override void Validate()
 {
     RequestValidator.ValidateObjectMaxListSize("param_list", this.ParamList, 20);
 }
 public void Validate()
 {
     RequestValidator.ValidateRequired("url", this.Url);
 }
Exemplo n.º 16
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("fields", this.Fields);
     RequestValidator.ValidateMinValue("num_iid", this.NumIid, 0);
     RequestValidator.ValidateRequired("sku_id", this.SkuId);
 }
Exemplo n.º 17
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("category_id", this.CategoryId);
 }
Exemplo n.º 18
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("app_name", this.AppName);
     RequestValidator.ValidateRequired("sdata", this.Sdata);
 }
 public void Validate()
 {
     RequestValidator.ValidateMaxLength("name", this.Name, 255);
 }
Exemplo n.º 20
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("stat_date", this.StatDate);
 }
Exemplo n.º 21
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("content", this.Content);
     RequestValidator.ValidateRequired("tool_id", this.ToolId);
 }
Exemplo n.º 22
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("instance", this.Instance);
 }
 public override void Validate()
 {
     RequestValidator.ValidateRequired("biz_code", this.BizCode);
     RequestValidator.ValidateRequired("channel_user_identify", this.ChannelUserIdentify);
     RequestValidator.ValidateRequired("userid", this.Userid);
 }
 public override void Validate()
 {
     RequestValidator.ValidateRequired("request", this.Request);
 }
Exemplo n.º 25
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("group_key", this.GroupKey);
     RequestValidator.ValidateRequired("wifi_key_list", this.WifiKeyList);
     RequestValidator.ValidateMaxListSize("wifi_key_list", this.WifiKeyList, 100);
 }
 public override void Validate()
 {
     RequestValidator.ValidateRequired("task", this.Task);
     RequestValidator.ValidateRequired("task_id", this.TaskId);
 }
Exemplo n.º 27
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("group_key", this.GroupKey);
 }
Exemplo n.º 28
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("item_id", this.ItemId);
 }
Exemplo n.º 29
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("is_sku", this.IsSku);
     RequestValidator.ValidateRequired("item_code", this.ItemCode);
     RequestValidator.ValidateRequired("name", this.Name);
 }
Exemplo n.º 30
0
        public void ProcessRequest(HttpContext context)
        {
            var aRequestInfo = RequestInfoProvider.GetRequestInformation();
            if (HttpContext.Current.Request.Url.PathAndQuery.TrimStart('/').ToLower().StartsWith(aRequestInfo.ApplicationPath.ToLower().Trim('/'))) return;

            var aliasSettingsManager = ObjectFactory.GetAliasSettingsManager(aRequestInfo);
            var settings = aliasSettingsManager.Get();

            if (settings.IsAliasingEnabled)
            {
                var aCacheDuration = 5;
                this.TraceMessage("BEGIN Processing URL");

                // Redirect if extensionless and no trailing forward slash. Backwards compatibility with pre 8.5.1.
                if (Path.GetExtension(context.Request.AppRelativeCurrentExecutionFilePath) == string.Empty && !context.Request.AppRelativeCurrentExecutionFilePath.EndsWith("/"))
                {
                    this.TraceMessage("Missing trailing slash, forcing a Redirect.");
                    context.Response.Clear();
                    context.Response.StatusCode = 301;
                    context.Response.Status = "301 Moved Permanently";
                    context.Response.AddHeader("Location", context.Request.Url.LocalPath + "/" + context.Request.Url.Query);
                    context.Response.End();
                }
                var aCacheKey = context.Request.Url.OriginalString + aRequestInfo.ContentLanguage.ToString();
                var aMessageKey = aCacheKey + "messages";
                var aRequestMessages = (List<RequestValidatorCode>)HttpRuntime.Cache[aMessageKey];

                if (aRequestMessages == null)
                {
                IRequestValidator requestValidator = new RequestValidator();
                    aRequestMessages = requestValidator.validate(context.Request.Url);
                    HttpRuntime.Cache.Insert(aMessageKey, aRequestMessages, null, System.DateTime.UtcNow.AddMinutes(aCacheDuration), Cache.NoSlidingExpiration);
                }

                if (aRequestMessages.Count == 0)
                {
                    var aTargetKey = aCacheKey + "target";
                    var target = (AliasData)HttpRuntime.Cache[aTargetKey];
                    if (target == null)
                {
                    var requestManager = ObjectFactory.GetURLRequestManager(aRequestInfo);
                    target = requestManager.GetTarget(context.Request.Url, aRequestInfo.ContentLanguage) ?? new AliasData();
                        HttpRuntime.Cache.Insert(aTargetKey, target, null, System.DateTime.UtcNow.AddMinutes(aCacheDuration), System.Web.Caching.Cache.NoSlidingExpiration);
                    }

                    // Handle Response
                    var aResponseMessageKey = aCacheKey + "responsemessages";
                    var responseMessages = (List<ResponseValidatorCode>)HttpRuntime.Cache[aResponseMessageKey];
                    if (responseMessages == null)
                    {
                    IResponseValidator responseValidator = new ResponseValidator();
                        responseMessages = responseValidator.validate(target);
                        HttpRuntime.Cache.Insert(aResponseMessageKey, responseMessages, null, System.DateTime.UtcNow.AddMinutes(aCacheDuration), System.Web.Caching.Cache.NoSlidingExpiration);
                    }
                    if (responseMessages.Count == 0)
                    {
                        this.processValidResponse(context, target);
                    }
                    else
                    {
                        this.processInvalidResponse(responseMessages, context);
                    }
                }
                else
                {
                    this.processInvalidRequest(aRequestMessages, context);
                }
            }
            else
            {
                // perform look up for default documents.
                processDefaultDocument(context);
            }
        }
 public void Validate()
 {
     RequestValidator.ValidateRequired("id", Id);
     RequestValidator.ValidateRequired("content", Content);
     RequestValidator.ValidateMaxLength("content", this.Content, 2000);
 }
Exemplo n.º 32
0
 public void Validate()
 {
     RequestValidator.ValidateRequired("id", this.Id);
     RequestValidator.ValidateRequired("user_nick", this.UserNick);
     RequestValidator.ValidateMaxLength("user_nick", this.UserNick, 64);
 }
Exemplo n.º 33
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("offset", this.Offset);
     RequestValidator.ValidateRequired("size", this.Size);
 }
Exemplo n.º 34
0
 public void Validate()
 {
     RequestValidator.ValidateMinValue("user_id", this.UserId, 1);
 }
Exemplo n.º 35
0
 public override void Validate()
 {
     RequestValidator.ValidateRequired("ip", this.Ip);
     RequestValidator.ValidateRequired("language", this.Language);
 }
Exemplo n.º 36
0
        public void CyclePositionedCorrectlyWithCollisions()
        {
            var gameConfig = new GameConfiguration(new CycleConfiguration(), new MapConfiguration());
            var map = new Map(gameConfig.MapConfig);
            var startPosition = new Vector3(0, gameConfig.CycleConfig.Y_OFFSET, 0);
            var cycle = new Cycle(1, startPosition, new Vector3(1, 0, 0), Math.PI + Math.PI * .5, 0xff0000, map, gameConfig);
            var requestValidator = new RequestValidator(map);
            var newPosition = startPosition.Clone();
            var collision = startPosition.Clone();
            newPosition.x += gameConfig.MapConfig.FLOOR_TILE_SIZE.Width * 5;
            collision.x += gameConfig.MapConfig.FLOOR_TILE_SIZE.Width * 3;

            cycle.MovementController.RequestedPosition = newPosition;
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            map[map.Utilities.ToMapLocation(cycle.MovementController)] = -cycle.ID;
            map[map.Utilities.ToMapLocation(collision)] = 5;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(collision));

            map.Clear();
            newPosition = startPosition.Clone();
            newPosition.x += gameConfig.MapConfig.FLOOR_TILE_SIZE.Width;
            cycle.MovementController.Position = startPosition;
            cycle.MovementController.RequestedPosition = newPosition;
            map[map.Utilities.ToMapLocation(startPosition)] = -cycle.ID;
            map[map.Utilities.ToMapLocation(newPosition)] = 5;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(newPosition));

            map.Clear();
            newPosition = startPosition.Clone();
            newPosition.x += gameConfig.MapConfig.FLOOR_TILE_SIZE.Width;
            cycle.MovementController.Position = startPosition;
            cycle.MovementController.RequestedPosition = newPosition;
            map[map.Utilities.ToMapLocation(startPosition)] = -cycle.ID;
            map[map.Utilities.ToMapLocation(newPosition)] = 5;
            newPosition.x += gameConfig.MapConfig.FLOOR_TILE_SIZE.Width;
            map[map.Utilities.ToMapLocation(newPosition)] = 5;
            newPosition.x -= gameConfig.MapConfig.FLOOR_TILE_SIZE.Width;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(newPosition));

            map.Clear();
            newPosition = map.Utilities.ToPosition(new MapLocation(23, 173),gameConfig.CycleConfig.Y_OFFSET);
            cycle.MovementController.Position = map.Utilities.ToPosition(new MapLocation(25, 173), gameConfig.CycleConfig.Y_OFFSET);
            cycle.MovementController.RequestedPosition = newPosition;
            cycle.MovementController.HeadLocation = map.Utilities.ToMapLocation(cycle.MovementController.Position);
            cycle.MovementController.Velocity = new Vector3(0, 0, -1);
            cycle.MovementController.Rotation = 0;
            map[map.Utilities.ToMapLocation(startPosition)] = -cycle.ID;
            map[new MapLocation(24,173)] = 5;
            requestValidator.ValidateRequestedPosition(cycle);

            Assert.True(cycle.MovementController.Position.SameAs(map.Utilities.ToPosition(new MapLocation(24, 173), gameConfig.CycleConfig.Y_OFFSET)));
        }