diff --git a/src/test/java/fr/iut_fbleau/but3/dev62/mylibrary/review/repository/ReviewRepositoryTest.java b/src/test/java/fr/iut_fbleau/but3/dev62/mylibrary/review/repository/ReviewRepositoryTest.java index 5c57571..77db1f8 100644 --- a/src/test/java/fr/iut_fbleau/but3/dev62/mylibrary/review/repository/ReviewRepositoryTest.java +++ b/src/test/java/fr/iut_fbleau/but3/dev62/mylibrary/review/repository/ReviewRepositoryTest.java @@ -21,6 +21,8 @@ public class ReviewRepositoryTest { private ReviewRepository repository; private Review review1; private Review review2; + private Review review3; + private Review review4; @BeforeEach void setUp() { @@ -34,12 +36,33 @@ public class ReviewRepositoryTest { .build(); review1.setRandomUUID(); + UUID customerId = UUID.randomUUID(); + UUID bookId = UUID.randomUUID(); review2 = Review.builder() + .customerId(customerId) + .bookId(bookId) .note(1) .comment("nul") .purchaseDate(purchaseDate) .build(); - review2.setRandomUUID(); + + UUID bookId3 = UUID.randomUUID(); + review3 = Review.builder() + .customerId(customerId) + .bookId(bookId3) + .note(2) + .comment("ça passe") + .purchaseDate(purchaseDate) + .build(); + + UUID customerId4 = UUID.randomUUID(); + review4 = Review.builder() + .customerId(customerId4) + .bookId(bookId) + .note(2) + .comment("ça passe") + .purchaseDate(purchaseDate) + .build(); } @Test @@ -250,6 +273,36 @@ public class ReviewRepositoryTest { void setUpReviews() { repository.save(review1); repository.save(review2); + repository.save(review3); + repository.save(review4); + } + + @Test + @DisplayName("Delete should remove all reviews of a customer") + void testDeleteCustomerReviews() { + repository.deleteCustomerReviews(review2.getCustomerId()); + + List reviews = repository.findAll(); + + assertEquals(1, reviews.size()); + assertTrue(reviews.contains(review1)); + assertFalse(reviews.contains(review2)); + assertFalse(reviews.contains(review3)); + assertTrue(reviews.contains(review4)); + } + + @Test + @DisplayName("Delete should remove all reviews of a book") + void testDeleteBookReviews() { + repository.deleteCustomerReviews(review2.getBookId()); + + List reviews = repository.findAll(); + + assertEquals(2, reviews.size()); + assertTrue(reviews.contains(review1)); + assertFalse(reviews.contains(review2)); + assertTrue(reviews.contains(review3)); + assertFalse(reviews.contains(review4)); } @Test @@ -262,6 +315,8 @@ public class ReviewRepositoryTest { assertEquals(1, reviews.size()); assertFalse(reviews.contains(review1)); assertTrue(reviews.contains(review2)); + assertTrue(reviews.contains(review3)); + assertTrue(reviews.contains(review4)); } @Test