public void ReturnDefaultView_WithCorrectModel_WhenAdvertIsFinded()
        {
            // Arrange
            var    createdOn = DateTime.Now;
            Advert advert    = new Advert()
            {
                Id        = 1,
                Title     = "Title",
                CreatedOn = createdOn
            };

            var advertViewModel = new AdvertViewModel()
            {
                Id        = advert.Id,
                Title     = advert.Title,
                CreatedOn = advert.CreatedOn
            };

            var advertService = new Mock <IAdvertService>();

            advertService.Setup(a => a.GetById(It.IsAny <int?>())).Returns(advert);

            var advertController = new AdvertController(advertService.Object);

            // Act and Assert
            advertController
            .WithCallTo(c => c.Detail(1))
            .ShouldRenderDefaultView()
            .WithModel <AdvertViewModel>(x =>
            {
                Assert.AreEqual(x.Id, advertViewModel.Id);
                Assert.AreEqual(x.Title, advertViewModel.Title);
                Assert.AreEqual(x.CreatedOn, advertViewModel.CreatedOn);
            });
        }
Esempio n. 2
0
        public void ReturnHttpStatusCode_BadRequest_IfModelParameterIsNull()
        {
            // Arrange
            var mockedAdvertService = new Mock <IAdvertService>();

            var advertController = new AdvertController(mockedAdvertService.Object);

            // Act and Assert
            advertController
            .WithCallTo(x => x.Index(null, 1))
            .ShouldGiveHttpStatus(HttpStatusCode.BadRequest);
        }
        public void HttpStatusCode_BadRequest_WhenIdParameterIsNull()
        {
            // Arrange
            var advertService = new Mock <IAdvertService>();

            var advertController = new AdvertController(advertService.Object);

            // Act and Assert
            advertController
            .WithCallTo(c => c.Detail(null))
            .ShouldGiveHttpStatus(HttpStatusCode.BadRequest);
        }
Esempio n. 4
0
        public void RedirectTo_ControllerHome_MethodIndex_IfModelStateIsNotValid()
        {
            // Arrange
            var mockedAdvertService = new Mock <IAdvertService>();

            var advertController = new AdvertController(mockedAdvertService.Object);

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

            // Act and Assert
            advertController
            .WithCallTo(x => x.Index(new AdvertSearchViewModel(), 1))
            .ShouldRedirectTo <CarAdverts.Web.Controllers.HomeController>(h => h.Index());
        }
        public void ReturnHttpStatusCode_NotFound_WhenNotFindAdvert()
        {
            // Arrange
            Advert advert = null;

            var advertService = new Mock <IAdvertService>();

            advertService.Setup(a => a.GetById(It.IsAny <int?>())).Returns(advert);

            var advertController = new AdvertController(advertService.Object);

            // Act and Assert
            advertController
            .WithCallTo(c => c.Detail(1))
            .ShouldGiveHttpStatus(HttpStatusCode.NotFound);
        }
Esempio n. 6
0
        public void RedirectTo_ControllerHome_MethodIndex_IfOcureError()
        {
            // Arrange
            var mockedAdvertService = new Mock <IAdvertService>();

            mockedAdvertService.Setup(a => a.Search(It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <int?>(),
                                                    It.IsAny <int?>(), It.IsAny <decimal?>(), It.IsAny <decimal?>(),
                                                    It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <int?>())).Throws(new Exception());

            var advertController = new AdvertController(mockedAdvertService.Object);

            // Act and Assert
            advertController
            .WithCallTo(x => x.Index(new AdvertSearchViewModel(), 1))
            .ShouldRedirectTo <CarAdverts.Web.Controllers.HomeController>(h => h.Index());
        }
        public void Create_Get_Should_ReturnCorrectActionResult()
        {
            // Arrange
            var mockedAdvertService       = new Mock <IAdvertService>();
            var mockedMappingService      = new Mock <IMappingService>();
            var mockedCityService         = new Mock <ICityService>();
            var mockedVehicleModelService = new Mock <IVehicleModelService>();

            var advertController = new AdvertController(
                mockedAdvertService.Object,
                mockedMappingService.Object,
                mockedVehicleModelService.Object,
                mockedCityService.Object);

            // Act & Assert
            advertController.WithCallTo(x => x.Create()).ShouldRenderDefaultView();
        }
        public void CreatePost_Should_RedirectToDefaultViewWithCorrectParameterModel_WhenThereIsExceptionOnCreatingInDatabase()
        {
            // Arrange
            var mockedContext = 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" });

            mockedContext.Setup(s => s.User).Returns(principal);

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

            var mockedAdvertService       = new Mock <IAdvertService>();
            var mockedMappingService      = new Mock <IMappingService>();
            var mockedCityService         = new Mock <ICityService>();
            var mockedVehicleModelService = new Mock <IVehicleModelService>();

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

            var advertController = new AdvertController(
                mockedAdvertService.Object,
                mockedMappingService.Object,
                mockedVehicleModelService.Object,
                mockedCityService.Object);

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

            // Act & Assert
            advertController
            .WithCallTo(c => c.Create(model, uploadedFiles))
            .ShouldRenderDefaultView()
            .WithModel <AdvertCreateViewModel>(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);
            });
        }
Esempio n. 9
0
        public void Index_Should_ReturnHttpStatusCode_BadRequest_IfModelParameterIsNull()
        {
            // Arrange
            var mockedAdvertService       = new Mock <IAdvertService>();
            var mockedMappingService      = new Mock <IMappingService>();
            var mockedCityService         = new Mock <ICityService>();
            var mockedVehicleModelService = new Mock <IVehicleModelService>();

            var advertController = new AdvertController(
                mockedAdvertService.Object,
                mockedMappingService.Object,
                mockedVehicleModelService.Object,
                mockedCityService.Object);

            // Act &Assert
            advertController
            .WithCallTo(x => x.Index(null))
            .ShouldGiveHttpStatus(HttpStatusCode.BadRequest);
        }
Esempio n. 10
0
        public void Index_Should_RedirectTo_ControllerHome_MethodIndex_IfModelStateIsNotValid()
        {
            // Arrange
            var mockedAdvertService       = new Mock <IAdvertService>();
            var mockedMappingService      = new Mock <IMappingService>();
            var mockedCityService         = new Mock <ICityService>();
            var mockedVehicleModelService = new Mock <IVehicleModelService>();

            var advertController = new AdvertController(
                mockedAdvertService.Object,
                mockedMappingService.Object,
                mockedVehicleModelService.Object,
                mockedCityService.Object);

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

            // Act and Assert
            advertController
            .WithCallTo(x => x.Index(new AdvertSearchViewModel()))
            .ShouldRedirectTo <Controllers.HomeController>(h => h.Index());
        }
Esempio n. 11
0
        public void Index_Should_RedirectTo_ControllerHome_MethodIndex_IfThereIsNoError()
        {
            // Arrange
            var mockedAdvertService       = new Mock <IAdvertService>();
            var mockedMappingService      = new Mock <IMappingService>();
            var mockedCityService         = new Mock <ICityService>();
            var mockedVehicleModelService = new Mock <IVehicleModelService>();

            mockedAdvertService.Setup(a => a.Search(It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <int?>(),
                                                    It.IsAny <int?>(), It.IsAny <decimal?>(), It.IsAny <decimal?>(),
                                                    It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <int?>(), It.IsAny <int?>())).Throws(new Exception());

            var advertController = new AdvertController(
                mockedAdvertService.Object,
                mockedMappingService.Object,
                mockedVehicleModelService.Object,
                mockedCityService.Object);

            // Act & Assert
            advertController
            .WithCallTo(x => x.Index(new AdvertSearchViewModel()))
            .ShouldRedirectTo <Controllers.HomeController>(h => h.Index());
        }
Esempio n. 12
0
        public void ReturnDefaultViewWithCorrectModel_IfNoOcureError()
        {
            // Arrange
            var adverts = new List <Advert>()
            {
                new Advert()
                {
                    Id = 1, CityId = 1, Price = 100, Power = 100
                }
            }.AsQueryable();

            var mockedAdvertService = new Mock <IAdvertService>();

            mockedAdvertService.Setup(x => x.Search(It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>(),
                                                    It.IsAny <int>(), It.IsAny <decimal>(), It.IsAny <decimal>(),
                                                    It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>(), It.IsAny <int>())).Returns(adverts);
            var advertController = new AdvertController(mockedAdvertService.Object);

            // Act and Assert
            advertController
            .WithCallTo(x => x.Index(new AdvertSearchViewModel(), 1))
            .ShouldRenderDefaultView();
        }
Esempio n. 13
0
        public void Detail_Should_ReturnHttpStatusCode_NotFound_WhenNotFindAdvert()
        {
            // Arrange
            Advert nullAdvert = null;

            var mockedAdvertService       = new Mock <IAdvertService>();
            var mockedMappingService      = new Mock <IMappingService>();
            var mockedCityService         = new Mock <ICityService>();
            var mockedVehicleModelService = new Mock <IVehicleModelService>();

            mockedAdvertService.Setup(a => a.GetById(It.IsAny <int?>())).Returns(nullAdvert);

            var advertController = new AdvertController(
                mockedAdvertService.Object,
                mockedMappingService.Object,
                mockedVehicleModelService.Object,
                mockedCityService.Object);

            // Act & Assert
            advertController
            .WithCallTo(c => c.Detail(1))
            .ShouldGiveHttpStatus(HttpStatusCode.NotFound);
        }
        public void CreatePost_Should_ReturnDefaultViewWithAdvertCreateViewModel_WhenModelStateIsNotValid()
        {
            // Arrange
            var model = new AdvertCreateViewModel();
            IEnumerable <HttpPostedFileBase> uploadedFiles = null;

            var mockedAdvertService       = new Mock <IAdvertService>();
            var mockedMappingService      = new Mock <IMappingService>();
            var mockedCityService         = new Mock <ICityService>();
            var mockedVehicleModelService = new Mock <IVehicleModelService>();

            var advertController = new AdvertController(
                mockedAdvertService.Object,
                mockedMappingService.Object,
                mockedVehicleModelService.Object,
                mockedCityService.Object);

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

            // Act & Assert
            advertController
            .WithCallTo(x => x.Create(model, uploadedFiles))
            .ShouldRenderDefaultView()
            .WithModel <AdvertCreateViewModel>(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);
            }
                                               );
        }