public void DeleteReviewShould_SuccesfullyDeleteReviewFromOrder() { var options = new DbContextOptionsBuilder <CarRentalDbContext>() .UseInMemoryDatabase(databaseName: "CarRental_Database_DeleteReview") .Options; var dbContext = new CarRentalDbContext(options); var user = new ApplicationUser() { Id = Guid.NewGuid().ToString(), Email = "*****@*****.**", FirstName = "Admin", LastName = "LastAdmin" }; var vouchersServiceMock = new Mock <IVouchersService>(); vouchersServiceMock.Setup(x => x.CreateForUser(user.Email)). ReturnsAsync(true); var order = new Order { Id = Guid.NewGuid().ToString(), ApplicationUserId = user.Id, CarId = 1, PickUpLocationId = 1, ReturnLocationId = 1, Price = 1, }; dbContext.Orders.Add(order); var random = new Random(); var reviewRating = random.Next(1, 5); var reviewComment = Guid.NewGuid().ToString(); order.Review = new Review { Comment = reviewComment, Rating = reviewRating, Id = 1, CarId = 1 }; dbContext.SaveChanges(); var ordersServiceMock = new Mock <IOrdersService>(); ordersServiceMock.Setup(x => x.DeleteReviewFromOrder(order.Review.Id)). ReturnsAsync(true); var reviewsService = new ReviewsService(dbContext, vouchersServiceMock.Object, this.mapper, ordersServiceMock.Object); Assert.True(order.Review != null); reviewsService.DeleteReview(order.Review.Id); var result = dbContext.Orders.FirstOrDefault(x => x.Id == order.Id).Review == null; Assert.True(result); }
public void DeleteReviewShould_ReturnFalseIfInvalidReviewId() { var options = new DbContextOptionsBuilder <CarRentalDbContext>() .UseInMemoryDatabase(databaseName: "CarRental_Database_DeleteReviewInvalidId") .Options; var dbContext = new CarRentalDbContext(options); var user = new ApplicationUser() { Id = Guid.NewGuid().ToString(), Email = "*****@*****.**", FirstName = "Admin", LastName = "LastAdmin" }; var vouchersServiceMock = new Mock <IVouchersService>(); vouchersServiceMock.Setup(x => x.CreateForUser(user.Email)). ReturnsAsync(true); var ordersServiceMock = new Mock <IOrdersService>(); ordersServiceMock.Setup(x => x.DeleteReviewFromOrder(It.IsAny <int>())). ReturnsAsync(true); var random = new Random(); var reviewsService = new ReviewsService(dbContext, vouchersServiceMock.Object, this.mapper, ordersServiceMock.Object); var result = reviewsService.DeleteReview(random.Next(1, 10)).GetAwaiter().GetResult(); Assert.False(result); }
public async void DeleteReview() { DbContextOptions <LoveThemBackAPIDbContext> options = new DbContextOptionsBuilder <LoveThemBackAPIDbContext>().UseInMemoryDatabase("DeletePet") .Options; using (LoveThemBackAPIDbContext context = new LoveThemBackAPIDbContext(options)) { Review Review = new Review(); Review.PetID = 1; Review.UserID = 2; Review.Impression = "Snooky"; var ServicesCreate = new ReviewsService(context); await ServicesCreate.AddReview(Review); ServicesCreate.DeleteReview(2, 1); var getReview = context.Reviews.FirstOrDefault(x => x.PetID == 1 && x.UserID == 2); Assert.Null(getReview); } }