Example #1
0
        public void SetTempData_NotificationsWithCorrectMessage_WhenOcuredExceptionOfCreatingInDb()
        {
            // Arrange
            // This code mock User.Identity.GetUserId()
            var context  = new Mock <HttpContextBase>();
            var identity = new GenericIdentity("*****@*****.**");

            identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "1"));
            var principal = new GenericPrincipal(identity, new[] { "user" });

            context.Setup(s => s.User).Returns(principal);
            //

            var model = new AdvertInputViewModel();
            IEnumerable <HttpPostedFileBase> uploadedFiles = null;

            var advertService = new Mock <IAdvertService>();

            advertService.Setup(a => a.CreateAdvert(It.IsAny <Advert>(), It.IsAny <IEnumerable <HttpPostedFileBase> >())).Throws(new Exception());

            var cityService  = new Mock <ICityService>();
            var modelService = new Mock <IVehicleModelService>();

            var advertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);

            advertController.ControllerContext = new ControllerContext(context.Object, new RouteData(), advertController);

            // Act
            advertController.Create(model, uploadedFiles);

            //  Assert
            Assert.AreEqual(advertController.TempData["Notification"], "Exeption.");
        }
Example #2
0
        public void RedirectToCorrectLinck_WhenModelStateIsValid_AndThereIsNoExceptions()
        {
            // Arrange
            // This code mock User.Identity.GetUserId()
            var context  = new Mock <HttpContextBase>();
            var identity = new GenericIdentity("*****@*****.**");

            identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "1"));
            var principal = new GenericPrincipal(identity, new[] { "user" });

            context.Setup(s => s.User).Returns(principal);
            //

            var model = new AdvertInputViewModel();
            IEnumerable <HttpPostedFileBase> uploadedFiles = null;

            var advertService = new Mock <IAdvertService>();

            advertService.Setup(a => a.CreateAdvert(It.IsAny <Advert>(), It.IsAny <IEnumerable <HttpPostedFileBase> >()));

            var cityService  = new Mock <ICityService>();
            var modelService = new Mock <IVehicleModelService>();

            var advertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);

            advertController.ControllerContext = new ControllerContext(context.Object, new RouteData(), advertController);

            // Act
            advertController.Create(model, uploadedFiles);

            // Assert
            advertController
            .WithCallTo(a => a.Create(model, uploadedFiles))
            .ShouldRedirectTo <CarAdverts.Web.Controllers.HomeController>(typeof(CarAdverts.Web.Controllers.HomeController).GetMethod("Index"));
        }
Example #3
0
        public void InvokeAdvertServiceMethod_CreateAdvert_Once_WhenModelStateIsValid()
        {
            // Arrange
            // This code mock User.Identity.GetUserId()
            var context  = new Mock <HttpContextBase>();
            var identity = new GenericIdentity("*****@*****.**");

            identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "1"));
            var principal = new GenericPrincipal(identity, new[] { "user" });

            context.Setup(s => s.User).Returns(principal);
            //

            var model = new AdvertInputViewModel();
            IEnumerable <HttpPostedFileBase> uploadedFiles = null;

            var advertService = new Mock <IAdvertService>();

            advertService.Setup(a => a.CreateAdvert(It.IsAny <Advert>(), It.IsAny <IEnumerable <HttpPostedFileBase> >()));

            var cityService  = new Mock <ICityService>();
            var modelService = new Mock <IVehicleModelService>();

            var advertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);

            advertController.ControllerContext = new ControllerContext(context.Object, new RouteData(), advertController);

            // Act
            advertController.Create(model, uploadedFiles);

            // Assert
            advertService.Verify(a => a.CreateAdvert(It.IsAny <Advert>(), It.IsAny <IEnumerable <HttpPostedFileBase> >()), Times.Once);
        }
Example #4
0
        public void ReturnDefaultViewWithAdvertInputViewModel_WhenModelStateIsNotValid()
        {
            // Arrange
            var model = new AdvertInputViewModel();
            IEnumerable <HttpPostedFileBase> uploadedFiles = null;

            var advertService = new Mock <IAdvertService>();
            var cityService   = new Mock <ICityService>();
            var modelService  = new Mock <IVehicleModelService>();

            var advertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);


            advertController.ModelState.AddModelError("test", "test");

            // Act and Assert
            advertController
            .WithCallTo(x => x.Create(model, uploadedFiles))
            .ShouldRenderDefaultView()
            .WithModel <AdvertInputViewModel>(x =>
            {
                Assert.IsNull(x.Title);
                Assert.AreEqual(x.VehicleModelId, 0);
                Assert.AreEqual(x.Year, 0);
                Assert.AreEqual(x.Price, 0);
                Assert.AreEqual(x.Power, 0);
                Assert.AreEqual(x.DistanceCoverage, 0);
                Assert.AreEqual(x.CityId, 0);
                Assert.IsNull(x.Description);
            }
                                              );
        }
Example #5
0
        public void ThrowArgumentNullException_WhenModelParameterIsNull()
        {
            // Arrange
            // This code mock User.Identity.GetUserId()
            var context  = new Mock <HttpContextBase>();
            var identity = new GenericIdentity("*****@*****.**");

            identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "1"));
            var principal = new GenericPrincipal(identity, new[] { "user" });

            context.Setup(s => s.User).Returns(principal);
            //

            AdvertInputViewModel             model         = null;
            IEnumerable <HttpPostedFileBase> uploadedFiles = null;

            var advertService = new Mock <IAdvertService>();

            advertService.Setup(a => a.CreateAdvert(It.IsAny <Advert>(), It.IsAny <IEnumerable <HttpPostedFileBase> >()));

            var cityService  = new Mock <ICityService>();
            var modelService = new Mock <IVehicleModelService>();

            var advertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);

            advertController.ControllerContext = new ControllerContext(context.Object, new RouteData(), advertController);

            // Act and Assert
            Assert.Throws <ArgumentNullException>(() => advertController.Create(model, uploadedFiles));
        }
        public void ReturnCorrectActionResult()
        {
            // Arrange
            var advertService = new Mock <IAdvertService>();
            var cityService   = new Mock <ICityService>();
            var modelService  = new Mock <IVehicleModelService>();

            var advertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);


            // Act
            advertController.WithCallTo(x => x.Create()).ShouldRenderDefaultView();
        }
        public void CreateInstanceOfAdvertController_WhenAdvertServiceParameterIsNotNull()
        {
            // Arrange
            var advertService = new Mock <IAdvertService>();
            var cityService   = new Mock <ICityService>();
            var modelService  = new Mock <IVehicleModelService>();

            // Act
            var crudAdvertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);

            // Act and Assert
            Assert.That(crudAdvertController, Is.Not.Null);
            Assert.IsInstanceOf <CRUDAdvertController>(crudAdvertController);
        }
Example #8
0
        public void RedirectToDefaultViewWithCorrectParameterModel_WhenOcuredExceptionOfCreatingInDb()
        {
            // Arrange
            // This code mock User.Identity.GetUserId()
            var context  = new Mock <HttpContextBase>();
            var identity = new GenericIdentity("*****@*****.**");

            identity.AddClaim(new Claim("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", "1"));
            var principal = new GenericPrincipal(identity, new[] { "user" });

            context.Setup(s => s.User).Returns(principal);
            //

            var model = new AdvertInputViewModel();
            IEnumerable <HttpPostedFileBase> uploadedFiles = null;

            var advertService = new Mock <IAdvertService>();

            advertService.Setup(a => a.CreateAdvert(It.IsAny <Advert>(), It.IsAny <IEnumerable <HttpPostedFileBase> >())).Throws(new Exception());

            var cityService  = new Mock <ICityService>();
            var modelService = new Mock <IVehicleModelService>();

            var advertController = new CRUDAdvertController(advertService.Object, cityService.Object, modelService.Object);

            advertController.ControllerContext = new ControllerContext(context.Object, new RouteData(), advertController);

            // Act and Assert
            advertController
            .WithCallTo(c => c.Create(model, uploadedFiles))
            .ShouldRenderDefaultView()
            .WithModel <AdvertInputViewModel>(x =>
            {
                Assert.IsNull(x.Title);
                Assert.AreEqual(x.VehicleModelId, 0);
                Assert.AreEqual(x.Year, 0);
                Assert.AreEqual(x.Price, 0);
                Assert.AreEqual(x.Power, 0);
                Assert.AreEqual(x.DistanceCoverage, 0);
                Assert.AreEqual(x.CityId, 0);
                Assert.IsNull(x.Description);
            });
        }