public void TestInitialize() { var fileMock = new Mock <IFormFile>(); LodgingModel = new LodgingModel() { Name = "Name", Description = "Description", Rating = 3, IsFull = true, Images = new List <IFormFile> { fileMock.Object }, PricePerNight = 100, Address = "Valid Address 123", Phone = "+598 98 303 040", ConfirmationMessage = "Your reservation has been confirmed!", TouristSpot = 1 }; LodgingReviewModel = new LodgingReviewModel { BookingId = 1, Rating = 3, Commentary = "a Comment" }; LodgingLogicMock = new Mock <ILodgingLogic>(MockBehavior.Strict); LodgingReviewLogicMock = new Mock <ILodgingReviewLogic>(MockBehavior.Strict); LodgingController = new LodgingController(LodgingLogicMock.Object, LodgingReviewLogicMock.Object); }
public void DeleteValidLodgingTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.RemoveLodging(It.IsAny <Guid>())); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Delete(lodgingModelForRequest.Id); var createdResult = result as NoContentResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(204, createdResult.StatusCode); }
public void DeleteLodgingTestWithInternalError() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.RemoveLodging(It.IsAny <Guid>())).Throws(new ServerBusinessLogicException("No se puede eliminar el hospedaje.")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Delete(lodgingModelForRequest.Id); var createdResult = result as ObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(500, createdResult.StatusCode); }
public void GetLodgingByIdNotFound() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.GetLodgingById(It.IsAny <Guid>())).Throws(new ClientBusinessLogicException()); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Get(lodgingModelForSearchResponse.Id); var createdResult = result as NotFoundObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(404, createdResult.StatusCode); }
public void CreateLodgingInternalServerErrorTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.Create(It.IsAny <Lodging>(), It.IsAny <Guid>(), It.IsAny <List <string> >())).Throws(new ServerBusinessLogicException("Error interno")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Post(lodgingModelForRequest); var createdResult = result as ObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(500, createdResult.StatusCode); }
public void GetAllLodgingsInternalErrorTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.GetAllLoadings()).Throws(new ServerBusinessLogicException("No se pudo encontrar hospedajes.")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Get(); var createdResult = result as ObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(500, createdResult.StatusCode); }
public void GetAllLodgingsNotFoundTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.GetAllLoadings()).Throws(new ClientBusinessLogicException()); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Get(); var createdResult = result as NotFoundObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(404, createdResult.StatusCode); }
public void GetLodgingByIdInternalErrorTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.GetLodgingById(It.IsAny <Guid>())).Throws(new ServerBusinessLogicException("El hospedaje solicitado no fue encontrado.")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Get(lodgingModelForSearchResponse.Id); var createdResult = result as ObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(500, createdResult.StatusCode); }
public void DeleteLodgingNotFountTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.RemoveLodging(It.IsAny <Guid>())).Throws(new ClientBusinessLogicException("El hospedaje a eliminar no ha sido encontrado.")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Delete(lodgingModelForRequest.Id); var createdResult = result as NotFoundObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(404, createdResult.StatusCode); }
public void CreateLodgingWithoutTouristSpotTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.Create(It.IsAny <Lodging>(), It.IsAny <Guid>(), It.IsAny <List <string> >())). Throws(new ClientBusinessLogicException("No se puede crear el hospedaje debido a que no se encontro el punto turistico")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Post(lodgingModelForRequest); var createdResult = result as NotFoundObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(404, createdResult.StatusCode); }
public void CreateLodgingInvalidTest() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.Create(It.IsAny <Lodging>(), It.IsAny <Guid>(), It.IsAny <List <string> >())). Throws(new DomainBusinessLogicException("No se puede crear el hospedaje debido a que no es valido.")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Post(lodgingModelForRequest); var createdResult = result as BadRequestObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(400, createdResult.StatusCode); }
public void CreateLodgingTestOk() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.Create(It.IsAny <Lodging>(), It.IsAny <Guid>(), It.IsAny <List <string> >())).Returns(lodgingOfficial); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Post(lodgingModelForRequest); var createdResult = result as CreatedAtRouteResult; var model = createdResult.Value as LodgingModelForSearchResponse; lodgingManagementMock.VerifyAll(); Assert.AreEqual(LodgingModelForSearchResponse.ToModel(lodgingOfficial), model); }
public void GetLodgingByIdTestOk() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.GetLodgingById(It.IsAny <Guid>())).Returns(lodgingForGet); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Get(lodgingModelForSearchResponse.Id); var createdResult = result as OkObjectResult; var model = createdResult.Value as LodgingModelForResponse; lodgingManagementMock.VerifyAll(); Assert.AreEqual(lodgingModelForResponse, model); }
public void UpdateLodgingTestOk() { Lodging lodgingUpdated = new Lodging() { Id = lodgingModelForRequest.Id, Name = "Hotel Enjoy Conrad", Images = new List <LodgingPicture> { lodgingPicture }, Address = "En la punta de punta del este", QuantityOfStars = 5, PricePerNight = 150, TouristSpot = touristSpotAdded }; LodgingModelForRequest lodgingModelForRequestToUpdate = new LodgingModelForRequest() { Id = lodgingModelForRequest.Id, Name = "Hotel Enjoy Conrad", Images = new List <string> { image.Path }, }; var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.UpdateLodging(It.IsAny <Guid>(), It.IsAny <Lodging>())).Returns(lodgingUpdated); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Put(lodgingModelForRequestToUpdate.Id, lodgingModelForRequestToUpdate); var createdResult = result as CreatedAtRouteResult; var model = createdResult.Value as LodgingModelForResponse; lodgingManagementMock.VerifyAll(); LodgingModelForResponse lodgingModelForResponse = new LodgingModelForResponse() { Id = lodgingModelForRequest.Id, Name = "Hotel Enjoy Conrad", ImagesPath = new List <string> { image.Path }, Address = "En la punta de punta del este", QuantityOfStars = 5, PricePerNight = 150, LodgingTouristSpotModel = TouristSpotModelForLodgingResponseModel.ToModel(touristSpotAdded), }; Assert.AreEqual(lodgingModelForResponse, model); }
public void GetAllLodgingsTestOk() { var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.GetAllLoadings()).Returns(new List <Lodging> { lodgingForGet }); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Get(); var createdResult = result as OkObjectResult; var model = createdResult.Value as List <LodgingModelForResponse>; lodgingManagementMock.VerifyAll(); Assert.AreEqual(lodgingModelForSearchResponse, model.First()); }
public LodgingControllerTest() { var contextMock = new Mock <LodgingContext>(_options); var loggerMock = new Mock <ILogger <LodgingController> >(); var repositoryMock = new Mock <LodgingRepo>(new LodgingContext(_options)); var unitOfWorkMock = new Mock <UnitOfWork>(contextMock.Object); repositoryMock.Setup(m => m.SelectAsync()).Returns(Task.FromResult <IEnumerable <LodgingModel> >(null)); repositoryMock.Setup(m => m.SelectAsync(0)).Returns(Task.FromResult(new LodgingModel())); repositoryMock.Setup(m => m.SelectAsync(1)).Returns(Task.FromResult <LodgingModel>(null)); unitOfWorkMock.Setup(m => m.Lodging).Returns(repositoryMock.Object); _logger = loggerMock.Object; _unitOfWork = unitOfWorkMock.Object; _controller = new LodgingController(_logger, _unitOfWork); }
public LodgingControllerTest() { var contextMock = new Mock <LodgingContext>(_options); var loggerMock = new Mock <ILogger <LodgingController> >(); var repositoryMock = new Mock <Repository <LodgingModel> >(new LodgingContext(_options)); var unitOfWorkMock = new Mock <UnitOfWork>(contextMock.Object); repositoryMock.Setup(m => m.DeleteAsync(0)).Throws(new Exception()); repositoryMock.Setup(m => m.DeleteAsync(1)).Returns(Task.FromResult(1)); repositoryMock.Setup(m => m.InsertAsync(It.IsAny <LodgingModel>())).Returns(Task.FromResult <LodgingModel>(null)); repositoryMock.Setup(m => m.SelectAsync()).Returns(Task.FromResult <IEnumerable <LodgingModel> >(null)); repositoryMock.Setup(m => m.SelectAsync(0)).Throws(new Exception()); repositoryMock.Setup(m => m.SelectAsync(1)).Returns(Task.FromResult <LodgingModel>(null)); repositoryMock.Setup(m => m.Update(It.IsAny <LodgingModel>())); unitOfWorkMock.Setup(m => m.Lodging).Returns(repositoryMock.Object); _unitOfWork = unitOfWorkMock.Object; _controller = new LodgingController(_unitOfWork); }
public LodgingControllerTest() { var loggerMock = new Mock <ILogger <LodgingController> >(); var repositoryMock = new Mock <ILodgingRepo>(); var unitOfWorkMock = new Mock <IUnitOfWork>(); repositoryMock.Setup(m => m.SelectAsync()).ReturnsAsync((IEnumerable <LodgingModel>)null); repositoryMock.Setup(m => m.SelectAsync(0)).ReturnsAsync(new LodgingModel()); repositoryMock.Setup(m => m.SelectAsync(1)).ReturnsAsync((LodgingModel)null); repositoryMock.Setup(m => m.SelectAsync(2)).ReturnsAsync(new LodgingModel() { Id = 2, LocationId = 2, Name = "name", Bathrooms = 1 }); unitOfWorkMock.Setup(m => m.Lodging).Returns(repositoryMock.Object); _logger = loggerMock.Object; _unitOfWork = unitOfWorkMock.Object; _controller = new LodgingController(_logger, _unitOfWork); }
public LodgingControllerTest() { var loggerMock = new Mock <ILogger <LodgingController> >(); var repositoryMock = new Mock <IRepository <LodgingModel> >(); var unitOfWorkMock = new Mock <IUnitOfWork>(); repositoryMock.Setup(m => m.SelectAsync()).ReturnsAsync((IEnumerable <LodgingModel>)null); repositoryMock.Setup(m => m.SelectAsync(e => e.EntityId == -1)).Throws(new KeyNotFoundException()); repositoryMock.Setup(m => m.SelectAsync(e => e.EntityId == 0)).ReturnsAsync(new List <LodgingModel>()); repositoryMock.Setup(m => m.SelectAsync(e => e.EntityId == 1)).ReturnsAsync((IEnumerable <LodgingModel>)null); repositoryMock.Setup(m => m.SelectAsync(e => e.EntityId == 2)).ReturnsAsync(new[] { new LodgingModel() { EntityId = 2, AddressId = 2, Name = "name", Bathrooms = 1 } }); unitOfWorkMock.Setup(m => m.Lodging).Returns(repositoryMock.Object); _logger = loggerMock.Object; _unitOfWork = unitOfWorkMock.Object; _controller = new LodgingController(_logger, _unitOfWork); }
public void UpdateInvalidLodgingWithAnyErrorFieldTest() { Lodging lodgingUpdated = new Lodging() { Id = lodgingModelForRequest.Id, Name = "", Images = new List <LodgingPicture>() { lodgingPicture }, Address = "En la punta de punta del este", QuantityOfStars = 5, PricePerNight = 150, TouristSpot = touristSpotAdded }; LodgingModelForRequest lodgingModelForRequestToUpdate = new LodgingModelForRequest() { Id = lodgingModelForRequest.Id, Name = "", Images = new List <string> { image.Path }, }; var lodgingManagementMock = new Mock <ILodgingManagement>(MockBehavior.Strict); lodgingManagementMock.Setup(m => m.UpdateLodging(It.IsAny <Guid>(), It.IsAny <Lodging>())). Throws(new DomainBusinessLogicException("No se puede actualizar el hospedaje deseado.")); LodgingController lodgingController = new LodgingController(lodgingManagementMock.Object); var result = lodgingController.Put(lodgingModelForRequestToUpdate.Id, lodgingModelForRequestToUpdate); var createdResult = result as BadRequestObjectResult; lodgingManagementMock.VerifyAll(); Assert.AreEqual(400, createdResult.StatusCode); }