Exemple #1
0
    // Start is called before the first frame update
    void Start()
    {
        _camera = gameObject.GetComponent <Camera>();
        for (var i = 0; i < stage1Items.Length; i++)
        {
            SetupItem(stage1Items[i], i);
        }

        for (var i = 0; i < stage2Items.Length; i++)
        {
            SetupItem(stage2Items[i], i);
        }

        _toWin = GameObject.Find("ToWin").GetComponent <SliderItemController>();
        _size  = GameObject.Find("BoardSize").GetComponent <SliderItemController>().value;

        SetStage(1);

        SceneManager.sceneLoaded += (scene, mode) =>
        {
            if (scene.name != "MainScene")
            {
                return;
            }
            var toWin    = _toWin.value;
            var size     = _size;
            var player   = _gameCellType;
            var gameCtrl = GameObject.Find("Game").GetComponent <GameController>();
            gameCtrl.toWin  = toWin;
            gameCtrl.player = player;
            GameObject.Find("Grid").GetComponent <Grid>().size = size;
        };
    }
        public void Post_Edit_Model_Is_Null()
        {
            // Arrange
            var        id                  = -1;
            SliderItem sliderItem          = null;
            var        sliderItemViewModel = new SliderItemViewModel()
            {
                ID               = id,
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var service    = Substitute.For <ISliderItemService>();
            var validator  = new ModelValidator <SliderItemViewModel>(sliderItemViewModel);
            var controller = new SliderItemController(service);

            service.GetSliderItem(id).Returns(sliderItem);

            // Act
            var valid = validator.IsValid();

            validator.AddToModelError(controller);
            var result     = controller.Edit(sliderItemViewModel) as HttpNotFoundResult;
            var statusCode = result.StatusCode;

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(valid, Is.True);
            Assert.That(404, Is.EqualTo(statusCode));
        }
        public void Post_Edit_Is_Not_Valid()
        {
            // Arrange
            var sliderItemViewModel = new SliderItemViewModel()
            {
                Position = 1,
                //ShortDescription = "Slider description 1",
                PictureUrl = "/Content/Images/pizzaSlide_1.jpg"
            };
            var service    = Substitute.For <ISliderItemService>();
            var controller = new SliderItemController(service);
            var validator  = new ModelValidator <SliderItemViewModel>(sliderItemViewModel);

            // Act
            var valid = validator.IsValid();

            validator.AddToModelError(controller);
            var result     = controller.Edit(sliderItemViewModel) as RedirectToRouteResult;
            var actionName = result.RouteValues.Values.ElementAt(0);
            var tempData   = controller.TempData["ModelIsNotValid"];

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(valid, Is.False);
            Assert.That("Index", Is.EqualTo(actionName));
            Assert.That("Wystąpił błąd w formularzu, spróbuj ponownie.", Is.EqualTo(tempData));
        }
        public void Delete_Not_Ajax_Request()
        {
            // Arrange
            var id         = 1;
            var sliderItem = new SliderItem()
            {
                ID               = id,
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var service        = Substitute.For <ISliderItemService>();
            var fakeController = new FakeController();
            var controller     = new SliderItemController(service);

            fakeController.PrepareFakeRequest();
            controller.ControllerContext = fakeController.GetControllerContext <SliderItemController>(new RouteData(), controller);
            service.GetSliderItem(id).Returns(sliderItem);

            // Act
            var result      = controller.Delete(id) as RedirectToRouteResult;
            var ajaxRequest = controller.Request.IsAjaxRequest();
            var actionName  = result.RouteValues.Values.ElementAt(0);

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(ajaxRequest, Is.False);
            Assert.That("Index", Is.EqualTo(actionName));
        }
        public void Good_Delete()
        {
            // Arrange
            var id         = 1;
            var sliderItem = new SliderItem()
            {
                ID               = id,
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var service        = Substitute.For <ISliderItemService>();
            var fakeController = new FakeController();
            var controller     = new SliderItemController(service);

            fakeController.PrepareFakeAjaxRequest();
            controller.ControllerContext = fakeController.GetControllerContext <SliderItemController>(new RouteData(), controller);
            service.GetSliderItem(id).Returns(sliderItem);
            service.DeleteSliderItem(sliderItem);
            service.SaveSliderItem();

            // Act
            var result              = controller.Delete(id) as JsonResult;
            var ajaxRequest         = controller.Request.IsAjaxRequest();
            var jsonRequestBehavior = result.JsonRequestBehavior;
            var data = result.Data;

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(ajaxRequest, Is.True);
            Assert.That(JsonRequestBehavior.AllowGet, Is.EqualTo(jsonRequestBehavior));
            Assert.That("", Is.EqualTo(data));
        }
        public void Get_Edit_Id_Is_Null()
        {
            // Arrange
            int?id         = null;
            var service    = Substitute.For <ISliderItemService>();
            var controller = new SliderItemController(service);

            // Act
            var result     = controller.Edit(id) as HttpStatusCodeResult;
            var statusCode = result.StatusCode;

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(400, Is.EqualTo(statusCode));
        }
        public void CreatePartial()
        {
            // Arrange
            var service    = Substitute.For <ISliderItemService>();
            var controller = new SliderItemController(service);

            // Act
            var result   = controller.CreatePartial() as PartialViewResult;
            var viewName = result.ViewName;
            var model    = result.Model;

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("_CreatePartial", Is.EqualTo(viewName));
            Assert.That(model, Is.Null);
        }
        public void Good_Post_Create()
        {
            // Arrange
            var sliderItemViewModel = new SliderItemViewModel()
            {
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var sliderItem = new SliderItem()
            {
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var fileName    = "text.jpg";
            var fileLength  = 1000;
            var contentType = "image";
            var fakeImage   = Substitute.For <HttpPostedFileBase>();
            var validator   = new ModelValidator <SliderItemViewModel>(sliderItemViewModel);
            var service     = Substitute.For <ISliderItemService>();

            fakeImage.FileName.Returns(fileName);
            fakeImage.ContentType.Returns(contentType);
            fakeImage.ContentLength.Returns(fileLength);

            var controller = new SliderItemController(service);

            service.MapViewModelToModel(sliderItemViewModel).Returns(sliderItem);
            sliderItem.PictureUrl = service.AddSliderItemImage(fakeImage);
            service.CreateSliderItem(sliderItem);
            service.SaveSliderItem();

            // Act
            var valid = validator.IsValid();

            validator.AddToModelError(controller);
            var result     = controller.Create(sliderItemViewModel, fakeImage) as RedirectToRouteResult;
            var actionName = result.RouteValues.Values.ElementAt(0);

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("Index", Is.EqualTo(actionName));
            Assert.That(valid, Is.True);
        }
        public void Get_Edit_Model_Null()
        {
            // Arrange
            var        id         = 1;
            SliderItem sliderItem = null;
            var        service    = Substitute.For <ISliderItemService>();
            var        controller = new SliderItemController(service);

            service.GetSliderItem(id).Returns(sliderItem);

            // Act
            var result     = controller.Edit(id) as HttpNotFoundResult;
            var statusCode = result.StatusCode;

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(404, Is.EqualTo(statusCode));
        }
        public void Good_Post_Edit()
        {
            // Arrange
            var id = 1;
            var sliderItemViewModel = new SliderItemViewModel()
            {
                ID               = id,
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var sliderItem = new SliderItem()
            {
                ID               = id,
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var service        = Substitute.For <ISliderItemService>();
            var validator      = new ModelValidator <SliderItemViewModel>(sliderItemViewModel);
            var fakeController = new FakeController();
            var controller     = new SliderItemController(service);

            fakeController.PrepareFakeAjaxRequest();
            controller.ControllerContext = fakeController.GetControllerContext <SliderItemController>(new RouteData(), controller);
            service.GetSliderItem(sliderItem.ID).Returns(sliderItem);
            service.MapViewModelToModel(sliderItemViewModel).Returns(sliderItem);
            service.UpdateSliderItem(sliderItem);
            service.SaveSliderItem();

            // Act
            var valid = validator.IsValid();

            validator.AddToModelError(controller);
            var result      = controller.Edit(sliderItemViewModel) as RedirectToRouteResult;
            var actionName  = result.RouteValues.Values.ElementAt(0);
            var ajaxRequest = controller.Request.IsAjaxRequest();

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("Index", Is.EqualTo(actionName));
            Assert.That(ajaxRequest, Is.True);
            Assert.That(valid, Is.True);
        }
        public void Good_Get_Edit()
        {
            // Arrange
            var id = 1;
            var sliderItemViewModel = new SliderItemViewModel()
            {
                ID               = id,
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var sliderItem = new SliderItem()
            {
                ID               = id,
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var service        = Substitute.For <ISliderItemService>();
            var fakeController = new FakeController();
            var controller     = new SliderItemController(service);

            fakeController.PrepareFakeAjaxRequest();
            controller.ControllerContext = fakeController.GetControllerContext <SliderItemController>(new RouteData(), controller);
            service.GetSliderItem(id).Returns(sliderItem);
            service.MapModelToViewModel(sliderItem).Returns(sliderItemViewModel);

            // Act
            var result      = controller.Edit(id) as PartialViewResult;
            var viewName    = result.ViewName;
            var model       = result.Model;
            var ajaxRequest = controller.Request.IsAjaxRequest();

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("_EditPartial", Is.EqualTo(viewName));
            Assert.That(ajaxRequest, Is.True);
            Assert.That(model, !Is.Null);
        }
        public void Post_Create_File_Is_Null_And_Content_Type_Not_Image()
        {
            // Arrange
            var sliderItemViewModel = new SliderItemViewModel()
            {
                Position         = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            HttpPostedFileBase fakeImage = null;
            var service    = Substitute.For <ISliderItemService>();
            var controller = new SliderItemController(service);

            // Act
            var result     = controller.Create(sliderItemViewModel, fakeImage) as RedirectToRouteResult;
            var actionName = result.RouteValues.Values.ElementAt(0);
            var tempData   = controller.TempData["ModelIsNotValid"];

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("Index", Is.EqualTo(actionName));
            Assert.That("Zdjęcie nie zostało przesłane prawidłowo. Spróbuj ponownie.", Is.EqualTo(tempData));
        }
        public void Index()
        {
            // Arrange
            var sliderItems = new List <SliderItem>()
            {
                new SliderItem()
                {
                    Position = 1, ShortDescription = "Slider description 1", PictureUrl = "/Content/Images/pizzaSlide_1.jpg"
                },
                new SliderItem()
                {
                    Position = 2, ShortDescription = "Slider description 2", PictureUrl = "/Content/Images/pizzaSlide_2.jpg"
                },
                new SliderItem()
                {
                    Position = 3, ShortDescription = "Slider description 3", PictureUrl = "/Content/Images/pizzaSlide_3.jpg"
                }
            };
            var service    = Substitute.For <ISliderItemService>();
            var controller = new SliderItemController(service);

            controller.TempData["ModelIsNotValid"] = "Fake content.";
            controller.ViewBag.ModelIsNotValid     = controller.TempData["ModelIsNotValid"];
            service.SliderItemList().Returns(sliderItems);

            // Act
            var result   = controller.Index() as ViewResult;
            var viewName = result.ViewName;
            var model    = result.Model;
            var tempData = controller.TempData["ModelIsNotValid"];

            //Assert
            Assert.That(result, !Is.Null);
            Assert.That("Index", Is.EqualTo(viewName));
            Assert.That("Fake content.", Is.EqualTo(tempData));
            Assert.That(model, !Is.Null);
        }
        public void Post_Create_Model_Not_Valid()
        {
            // Arrange
            var sliderItemViewModel = new SliderItemViewModel()
            {
                //Position = 1,
                ShortDescription = "Slider description 1",
                PictureUrl       = "/Content/Images/pizzaSlide_1.jpg"
            };
            var fileName    = "text.jpg";
            var fileLength  = 1000;
            var contentType = "image";
            var fakeImage   = Substitute.For <HttpPostedFileBase>();
            var validator   = new ModelValidator <SliderItemViewModel>(sliderItemViewModel);
            var service     = Substitute.For <ISliderItemService>();

            fakeImage.FileName.Returns(fileName);
            fakeImage.ContentType.Returns(contentType);
            fakeImage.ContentLength.Returns(fileLength);

            var controller = new SliderItemController(service);

            // Act
            var valid = validator.IsValid();

            validator.AddToModelError(controller);
            var result     = controller.Create(sliderItemViewModel, fakeImage) as RedirectToRouteResult;
            var actionName = result.RouteValues.Values.ElementAt(0);
            var tempData   = controller.TempData["ModelIsNotValid"];

            // Assert
            Assert.That(valid, Is.False);
            Assert.That(result, !Is.Null);
            Assert.That("Wystąpił błąd w formularzu, spróbuj ponownie.", Is.EqualTo(tempData));
            Assert.That("Index", Is.EqualTo(actionName));
        }