public TouristicSpot FromModelInToTouristicSpot() { List <CategoryTouristicSpot> listCategories = new List <CategoryTouristicSpot>(); if (Categories == null || Categories.Length < 1) { listCategories = null; } else { foreach (int item in this.Categories) { CategoryTouristicSpot c = new CategoryTouristicSpot(); c.CategoryId = item; listCategories.Add(c); } } TouristicSpot touristicSpot = new TouristicSpot() { Name = this.Name, Description = this.Description, RegionId = this.RegionId, Categories = listCategories, Image = this.Image }; return(touristicSpot); }
private void CheckBookingTouristicSpot(TouristicSpot touristicSpot) { if (touristicSpot == null) { throw new NotFoundException("Touristic Spot"); } }
public TouristicSpot AddTouristicSpot(TouristicSpot spot) { CheckRegion(spot.RegionId); CheckCategories(spot.Categories); CheckName(spot.Name); return(this.touristicSpotRepository.AddAndSave(spot)); }
public TouristicSpotModelOut(TouristicSpot t) { Id = t.Id; Name = t.Name; Description = t.Description; Image = t.Image; }
public void TestGetByRegionAndCategory() { TouristicSpot touristicSpot = new TouristicSpot { Name = "a", Description = "b" }; List <int> listCategories = new List <int> { 1 }; List <TouristicSpot> list = new List <TouristicSpot> { touristicSpot }; var mockTouristicSpot = new Mock <ITouristicSpotLogic>(MockBehavior.Strict); mockTouristicSpot.Setup(p => p.GetSpotsByRegionAndCategory(It.IsAny <List <int> >(), It.IsAny <int>())).Returns(list); var controller = new TouristicSpotController(mockTouristicSpot.Object); var result = controller.GetByRegionCategory(1, listCategories) as OkObjectResult; mockTouristicSpot.VerifyAll(); Assert.AreEqual(200, result.StatusCode); }
public void TestGetByName() { TouristicSpot spot = new TouristicSpot() { Id = 1, Name = "Villa Serrana", Accommodations = null, Description = "Villa Serrana es un poblado ubicado en el departamento de Lavalleja de Uruguay,", Region = null, RegionId = 2, Categories = null, }; List <TouristicSpot> spots = new List <TouristicSpot>() { spot, new TouristicSpot() { Id = 2, Name = "Colonia del Sacramento", Accommodations = null, Description = "Es conocida por su Barrio Histórico con calles de", Region = null, RegionId = 1, Categories = null, }, }; spots.ForEach(s => _context.Add(s)); _context.SaveChanges(); var repository = new TouristicSpotRepository(_context); var result = repository.GetByName("Villa Serrana"); Assert.IsTrue(spot.Equals(result)); }
public void AddAccommodationNullInputTest2() { Accommodation accommodation = new Accommodation() { Id = 5, Name = "abom", Address = "ag", Images = null, ContactNumber = "a", Information = "a", PricePerNight = 5, SpotId = 3, }; TouristicSpot spot = new TouristicSpot() { Name = "a", Id = 6 }; var mockAccommodation = new Mock <IAccommodationRepository>(MockBehavior.Strict); mockAccommodation.Setup(p => p.AddAndSave(It.IsAny <Accommodation>())).Returns(accommodation); mockAccommodation.Setup(p => p.GetByName(It.IsAny <string>())).Returns(accommodation); var mockTouristicSpot = new Mock <ITouristicSpotRepository>(MockBehavior.Strict); mockTouristicSpot.Setup(p => p.GetById(It.IsAny <int>())).Returns(spot); var mockReview = new Mock <IReviewRepository>(MockBehavior.Strict); var mockBooking = new Mock <IBookingRepository>(MockBehavior.Strict); var logic = new AccommodationLogic(mockAccommodation.Object, mockTouristicSpot.Object, mockReview.Object, mockBooking.Object); var result = logic.AddAccommodation(accommodation); }
public void TestCreateTouristicSpot() { TouristicSpot touristicSpot = new TouristicSpot { Name = "a", Description = "b" }; TouristicSpotModelIn touristicSpotModel = new TouristicSpotModelIn { Description = touristicSpot.Description, Name = touristicSpot.Name }; int[] list = new int[1]; list[0] = 1; touristicSpotModel.Categories = list; var mockTouristicSpot = new Mock <ITouristicSpotLogic>(MockBehavior.Strict); mockTouristicSpot.Setup(p => p.AddTouristicSpot(It.IsAny <TouristicSpot>())).Returns(touristicSpot); var controller = new TouristicSpotController(mockTouristicSpot.Object); var result = controller.CreateSpot(touristicSpotModel) as OkObjectResult; mockTouristicSpot.VerifyAll(); Assert.AreEqual(200, result.StatusCode); }
public void AddTouristicSpotAlreadyExistsTest() { List <CategoryTouristicSpot> categories = new List <CategoryTouristicSpot>(); CategoryTouristicSpot category = new CategoryTouristicSpot() { CategoryId = 1, TouristicSpotId = 5 }; categories.Add(category); TouristicSpot touristicSpot = new TouristicSpot() { Id = 5, Name = "abm", RegionId = 3, Categories = categories }; var mockTouristicSpot = new Mock <ITouristicSpotRepository>(MockBehavior.Strict); mockTouristicSpot.Setup(p => p.AddAndSave(It.IsAny <TouristicSpot>())).Returns(touristicSpot); mockTouristicSpot.Setup(p => p.GetByName(It.IsAny <string>())).Returns(touristicSpot); var logic = new TouristicSpotLogic(mockTouristicSpot.Object); var result = logic.AddTouristicSpot(touristicSpot); mockTouristicSpot.VerifyAll(); Assert.IsTrue(result.Equals(touristicSpot)); }
public IActionResult CreateSpot(TouristicSpotModelIn touristicSpotModelIn) { TouristicSpot touristicSpot = touristicSpotModelIn.FromModelInToTouristicSpot(); var response = new TouristicSpotModelOut(touristicSpotLogic.AddTouristicSpot(touristicSpot)); return(Ok(response)); }
public void AddAccommodationNullInputTest() { List <CategoryTouristicSpot> categories = new List <CategoryTouristicSpot>(); CategoryTouristicSpot category = new CategoryTouristicSpot() { CategoryId = 1, TouristicSpotId = 5 }; categories.Add(category); TouristicSpot touristicSpot = new TouristicSpot() { Id = 5, Name = "abm", RegionId = 0, Categories = categories }; var mockTouristicSpot = new Mock <ITouristicSpotRepository>(MockBehavior.Strict); mockTouristicSpot.Setup(p => p.AddAndSave(It.IsAny <TouristicSpot>())).Returns(touristicSpot); mockTouristicSpot.Setup(p => p.GetByName(It.IsAny <string>())).Returns <Accommodation>(null); var logic = new TouristicSpotLogic(mockTouristicSpot.Object); var result = logic.AddTouristicSpot(touristicSpot); }
public void TestEquals3() { TouristicSpot aux = new TouristicSpot { Name = "test" }; Assert.IsFalse(touristicSpot.Equals(aux)); }
public void TestGetByRegion() { TouristicSpot touristicSpot = new TouristicSpot() { Id = 4, Name = "Colonia del Sacramento", Accommodations = new List <Accommodation>(), Description = "Es conocida por su Barrio Histórico con calles de" + " adoquines rodeadas de edificios que datan de la" + " época en que era un asentamiento portugués.", Region = new Region(), RegionId = 1, Categories = new List <CategoryTouristicSpot>(), }; List <TouristicSpot> spotsToReturn = new List <TouristicSpot>() { new TouristicSpot() { Id = 1, Name = "Villa Serrana", Accommodations = new List <Accommodation>(), Description = "Villa Serrana es un poblado ubicado en el departamento de Lavalleja de Uruguay," + " a 25 kilómetros al noreste de la capital departamental," + " Minas, entre los valles de los arroyos Penitente y Marmarajá.", Region = new Region() { Id = 3 }, RegionId = 3, Categories = new List <CategoryTouristicSpot>(), }, touristicSpot, }; List <TouristicSpot> listToReturn = new List <TouristicSpot> { touristicSpot }; spotsToReturn.ForEach(s => _context.Add(s)); _context.SaveChanges(); var repository = new TouristicSpotRepository(_context); var result = repository.GetByRegion(1); Assert.IsTrue(listToReturn.SequenceEqual(result)); }
public void GetReportTest() { ReportTuple reportTuple = new ReportTuple() { Id = 1, Count = 1 }; ReportTupleReturn reportTuplerReturn = new ReportTupleReturn { AccommodationName = "a", Count = 1 }; TouristicSpot touristicSpot = new TouristicSpot() { Id = 4, Name = "a" }; Accommodation accommodation = new Accommodation() { Id = 1, Name = "a" }; IList <ReportTuple> listReport = new List <ReportTuple> { reportTuple }; List <ReportTupleReturn> listReturn = new List <ReportTupleReturn>(); listReturn.Add(reportTuplerReturn); var mockBooking = new Mock <IBookingRepository>(MockBehavior.Strict); var mockTourist = new Mock <IAccommodationRepository>(MockBehavior.Strict); var mockAccommodation = new Mock <ITouristRepository>(MockBehavior.Strict); var mockTouristicSpot = new Mock <ITouristicSpotRepository>(MockBehavior.Strict); mockBooking.Setup(p => p.GetReport(It.IsAny <int>(), It.IsAny <DateTime>(), It.IsAny <DateTime>())).Returns(listReport); mockTouristicSpot.Setup(p => p.GetByName(It.IsAny <string>())).Returns(touristicSpot); mockTourist.Setup(p => p.GetById(It.IsAny <int>())).Returns(accommodation); var controller = new BookingLogic(mockBooking.Object, mockTourist.Object, mockAccommodation.Object, mockTouristicSpot.Object); var result = controller.GetReport("a", new DateTime(2020, 01, 20), new DateTime(2020, 02, 20)); mockBooking.VerifyAll(); Assert.AreEqual(result[0].AccommodationName, listReturn[0].AccommodationName); }
public void GetSpotsByCategoryAndRegionGetByRegionTest() { TouristicSpot touristicSpot = new TouristicSpot { Id = 5, Name = "abom" }; List <TouristicSpot> touristicSpots = new List <TouristicSpot>(); List <int> categories = new List <int>(); var mockTouristicSpot = new Mock <ITouristicSpotRepository>(MockBehavior.Strict); mockTouristicSpot.Setup(p => p.GetByRegion(It.IsAny <int>())).Returns(touristicSpots); var logic = new TouristicSpotLogic(mockTouristicSpot.Object); var result = logic.GetSpotsByRegionAndCategory(categories, 0); mockTouristicSpot.VerifyAll(); Assert.IsTrue(result.Equals(touristicSpots)); }
public void AddAccommodationTest2() { List <AccommodationImage> images = new List <AccommodationImage>(); AccommodationImage image = new AccommodationImage() { Image = "image", AccommodationId = 5 }; images.Add(image); Accommodation accommodation = new Accommodation() { Id = 5, Name = "abom", Address = "ag", Images = images, ContactNumber = "a", Information = "a", PricePerNight = 5, SpotId = 3, }; TouristicSpot spot = new TouristicSpot() { Name = "a", Id = 6 }; var mockAccommodation = new Mock <IAccommodationRepository>(MockBehavior.Strict); mockAccommodation.Setup(p => p.AddAndSave(It.IsAny <Accommodation>())).Returns(accommodation); mockAccommodation.Setup(p => p.GetByName(It.IsAny <string>())).Returns <Accommodation>(null); var mockTouristicSpot = new Mock <ITouristicSpotRepository>(MockBehavior.Strict); var mockReview = new Mock <IReviewRepository>(MockBehavior.Strict); mockTouristicSpot.Setup(p => p.GetById(It.IsAny <int>())).Returns(spot); var mockBooking = new Mock <IBookingRepository>(MockBehavior.Strict); var logic = new AccommodationLogic(mockAccommodation.Object, mockTouristicSpot.Object, mockReview.Object, mockBooking.Object); var result = logic.AddAccommodation(accommodation); mockAccommodation.VerifyAll(); mockTouristicSpot.VerifyAll(); Assert.IsTrue(result.Equals(accommodation)); }
public void TestAddSpot() { TouristicSpot spot = new TouristicSpot() { Id = 1, Name = "Colonia del Sacramento", Accommodations = null, Description = "Es conocida por su Barrio Histórico con calles de" + " adoquines rodeadas de edificios que datan de la" + " época en que era un asentamiento portugués.", Region = null, RegionId = 1, Categories = null, }; var repository = new TouristicSpotRepository(_context); repository.AddAndSave(spot); Assert.AreEqual(_context.Find <TouristicSpot>(1), spot); }
public void TestDelete() { TouristicSpot touristicSpot = new TouristicSpot() { Id = 1, Name = "Villa Serrana", Accommodations = null, Description = "Villa Serrana es un poblado ubicado en el departamento de Lavalleja de Uruguay,", Region = null, RegionId = 2, Categories = null, }; _context.Add(touristicSpot); _context.SaveChanges(); var repository = new TouristicSpotRepository(_context); repository.Delete(touristicSpot); Assert.IsNull(_context.Find <TouristicSpot>(touristicSpot.Id)); }
public void TestAddAccommodation() { List <CategoryTouristicSpot> categories = new List <CategoryTouristicSpot>(); CategoryTouristicSpot category = new CategoryTouristicSpot() { CategoryId = 1, TouristicSpotId = 5 }; categories.Add(category); TouristicSpot spot = new TouristicSpot() { Name = "h", Categories = categories, RegionId = 5 }; this._context.TouristicSpots.Add(spot); Accommodation accommodation = new Accommodation() { Id = 3, Address = "Test", Bookings = null, ContactNumber = "09934566", Full = false, Name = "Radisson", Information = "nice", PricePerNight = 1.76, Spot = spot, SpotId = 1 }; var repository = new AccommodationRepository(_context); repository.AddAndSave(accommodation); Assert.AreEqual(_context.Find <Accommodation>(3), accommodation); }
public void TestGetByCategoryAndByRegion() { List <int> listOfCategoriesToSearch = new List <int> { 1, 3 }; CategoryTouristicSpot category1TouristicSpot4 = new CategoryTouristicSpot() { CategoryId = 1, TouristicSpotId = 4 }; CategoryTouristicSpot category2TouristicSpot1 = new CategoryTouristicSpot() { CategoryId = 2, TouristicSpotId = 1 }; CategoryTouristicSpot category3TouristicSpot4 = new CategoryTouristicSpot() { CategoryId = 3, TouristicSpotId = 4 }; List <CategoryTouristicSpot> listOfCategoiresOfTouristicSpot4 = new List <CategoryTouristicSpot> { category1TouristicSpot4, category3TouristicSpot4 }; List <CategoryTouristicSpot> listOfCategoriesOfTouristicSpot1 = new List <CategoryTouristicSpot> { category2TouristicSpot1 }; TouristicSpot touristicSpotToReturn = new TouristicSpot() { Id = 4, Name = "Colonia del Sacramento", Accommodations = new List <Accommodation>(), Description = "Es conocida por su Barrio Histórico con calles de", Region = new Region() { Id = 2 }, RegionId = 2, Categories = listOfCategoiresOfTouristicSpot4, }; List <TouristicSpot> spots = new List <TouristicSpot>() { new TouristicSpot() { Id = 1, Name = "Villa Serrana", Accommodations = new List <Accommodation>(), Description = "Villa Serrana es un poblado ubicado en el departamento de Lavalleja de Uruguay,", Region = new Region(), RegionId = 1, Categories = listOfCategoriesOfTouristicSpot1, }, touristicSpotToReturn, new TouristicSpot() { Id = 3, Name = "Vierrana", Accommodations = new List <Accommodation>(), Description = "Vilartamento de Lavalleja de Uruguay," + " a 25 kilómetros", Region = touristicSpotToReturn.Region, RegionId = 2, Categories = listOfCategoriesOfTouristicSpot1, }, }; List <TouristicSpot> listToReturn = new List <TouristicSpot> { touristicSpotToReturn }; spots.ForEach(s => _context.Add(s)); _context.SaveChanges(); var repository = new TouristicSpotRepository(_context); var result = repository.GetByCategoryAndRegion(listOfCategoriesToSearch, 2); Assert.IsTrue(listToReturn.SequenceEqual(result)); }
public void TestEquals() { TouristicSpot aux = touristicSpot; Assert.IsTrue(touristicSpot.Equals(aux)); }
public TouristicSpot AddAndSave(TouristicSpot spot) { this.spots.Add(spot); this.bookUYContext.SaveChanges(); return(spot); }
public TouristicSpot Delete(TouristicSpot touristicSpot) { this.spots.Remove(touristicSpot); bookUYContext.SaveChanges(); return(touristicSpot); }
public void ImportTestWithNewTouristicSpot() { ImporterModel importerModel = new ImporterModel() { Name = "Test", Parameters = new List <ValueParameter>() { new ValueParameter() { Name = "Path", Value = "Path test" } } }; Region region = new Region() { Id = 1, Name = "Region name" }; Category category = new Category() { Id = 1, Name = "Category name" }; TouristicSpot touristicSpot = new TouristicSpot() { Name = "TouristicSpot name", Description = "TouristicSpot description", Image = "TouristicSpot image", RegionId = 1, Categories = new List <CategoryTouristicSpot>() { new CategoryTouristicSpot() { CategoryId = 1 } } }; Accommodation accommodation = new Accommodation() { Name = "Accommodation name", Address = "Accommodation address", ContactNumber = "Accommodation contactNumber", Full = false, Images = new List <AccommodationImage>() { new AccommodationImage() { Image = "AccommodationImage image" } }, Information = "Accommodation information", PricePerNight = 1 }; AccommodationModelOut accommodationModelOut = new AccommodationModelOut(accommodation, (0, new List <Review>())); var mockAccommodation = new Mock <IAccommodationRepository>(MockBehavior.Strict); mockAccommodation.Setup(p => p.GetByName(It.IsAny <string>())).Returns <Accommodation>(null); mockAccommodation.Setup(p => p.AddAndSave(It.IsAny <Accommodation>())).Returns(accommodation); var mockTouristicSpot = new Mock <ITouristicSpotRepository>(MockBehavior.Strict); mockTouristicSpot.SetupSequence(p => p.GetByName(It.IsAny <string>())).Returns((TouristicSpot)null).Returns(touristicSpot); mockTouristicSpot.Setup(p => p.AddAndSave(It.IsAny <TouristicSpot>())).Returns(touristicSpot); var mockRegion = new Mock <IRepository <Region> >(MockBehavior.Strict); mockRegion.Setup(p => p.GetById(It.IsAny <int>())).Returns(region); var mockCategory = new Mock <IRepository <Category> >(MockBehavior.Strict); mockCategory.Setup(p => p.GetById(It.IsAny <int>())).Returns(category); var logic = new ImporterLogic(mockAccommodation.Object, mockTouristicSpot.Object, mockRegion.Object, mockCategory.Object); var result = logic.Import(importerModel); mockAccommodation.VerifyAll(); mockCategory.VerifyAll(); mockTouristicSpot.VerifyAll(); mockRegion.VerifyAll(); Assert.AreEqual(accommodationModelOut, result); }
public void CleanUp() { touristicSpot = new TouristicSpot(); }
public AccommodationModelOut Import(ImporterModel import) { var implementation = ObtainImplementation(import.Name); var parse = new AccommodationParse(); try { parse = implementation.Import(import.Parameters); } catch { throw new ImportParseException(); } CheckTouristicSpot(parse.TouristicSpot); CheckRegion(parse.TouristicSpot.RegionId); CheckCategories(parse.TouristicSpot.Categories); CheckAccommodation(parse.Name); var touristicSpot = touristicSpotRepository.GetByName(parse.TouristicSpot.Name); if (touristicSpot == null) { List <CategoryTouristicSpot> categoryTouristicSpots = new List <CategoryTouristicSpot>(); foreach (int category in parse.TouristicSpot.Categories) { categoryTouristicSpots.Add(new CategoryTouristicSpot() { CategoryId = category }); } touristicSpot = new TouristicSpot() { Categories = categoryTouristicSpots, Description = parse.TouristicSpot.Description, Image = parse.TouristicSpot.Image, Name = parse.TouristicSpot.Name, RegionId = parse.TouristicSpot.RegionId }; touristicSpotRepository.AddAndSave(touristicSpot); touristicSpot = touristicSpotRepository.GetByName(parse.TouristicSpot.Name); } List <AccommodationImage> accommodationImages = new List <AccommodationImage>(); foreach (AccommodationImageParse accommodationImage in parse.Images) { accommodationImages.Add(new AccommodationImage() { Image = accommodationImage.Image }); } Accommodation accommodation = this.accommodationRepository.AddAndSave(new Accommodation() { Address = parse.Address, ContactNumber = parse.ContactNumber, Full = parse.Full, Information = parse.Information, Name = parse.Name, PricePerNight = parse.PricePerNight, Images = accommodationImages, Spot = touristicSpot }); return(new AccommodationModelOut(accommodation, (0, new List <Review>()))); }
public void StartUp() { touristicSpot = new TouristicSpot(); }