From 809d2e16d7b1d9934f6f82af8b8896e6e4adbec3 Mon Sep 17 00:00:00 2001 From: Apirom Na Nakorn Date: Sun, 31 Mar 2024 13:06:59 +0700 Subject: [PATCH 1/8] Format code --- .../kbazaar/cart/CartControllerTest.java | 26 +++++++++---------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/kbazaar/src/test/java/com/kampus/kbazaar/cart/CartControllerTest.java b/kbazaar/src/test/java/com/kampus/kbazaar/cart/CartControllerTest.java index 38fa877..bd79e5d 100644 --- a/kbazaar/src/test/java/com/kampus/kbazaar/cart/CartControllerTest.java +++ b/kbazaar/src/test/java/com/kampus/kbazaar/cart/CartControllerTest.java @@ -1,8 +1,6 @@ package com.kampus.kbazaar.cart; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; -import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; -import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; import com.kampus.kbazaar.promotion.PromotionService; @@ -48,16 +46,16 @@ public void getCart_ReturnsOk() throws Exception { .andExpect(status().isOk()); } -// @Test -// public void getCards_ReturnsCorrectResponse() throws Exception { -// mockMvc.perform(get("/api/v1/carts").contentType(MediaType.APPLICATION_JSON)) -// .andDo(print()) -// .andExpect(jsonPath("$.username").value("TechNinja")) -// .andExpect(jsonPath("$.items").isArray()) -// .andExpect(jsonPath("$.discount").value(0)) -// .andExpect(jsonPath("$.totalDiscount").value(0)) -// .andExpect(jsonPath("$.subtotal").value(1)) -// .andExpect(jsonPath("$.grandTotal").value(1)) -// .andExpect(status().isOk()); -// } + // @Test + // public void getCards_ReturnsCorrectResponse() throws Exception { + // mockMvc.perform(get("/api/v1/carts").contentType(MediaType.APPLICATION_JSON)) + // .andDo(print()) + // .andExpect(jsonPath("$.username").value("TechNinja")) + // .andExpect(jsonPath("$.items").isArray()) + // .andExpect(jsonPath("$.discount").value(0)) + // .andExpect(jsonPath("$.totalDiscount").value(0)) + // .andExpect(jsonPath("$.subtotal").value(1)) + // .andExpect(jsonPath("$.grandTotal").value(1)) + // .andExpect(status().isOk()); + // } } From dd3b295cfd3a470a10de66b97f2d5103f0d37519 Mon Sep 17 00:00:00 2001 From: robot Date: Sun, 31 Mar 2024 06:10:57 +0000 Subject: [PATCH 2/8] =?UTF-8?q?[skip=20actions]=20=F0=9F=A4=96=20change=20?= =?UTF-8?q?docker=20image=20version=20to=20809d2e16d7b1d9934f6f82af8b8896e?= =?UTF-8?q?6e4adbec3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- infra/gitops/dev/deployment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/infra/gitops/dev/deployment.yml b/infra/gitops/dev/deployment.yml index 0664035..6392fca 100644 --- a/infra/gitops/dev/deployment.yml +++ b/infra/gitops/dev/deployment.yml @@ -15,7 +15,7 @@ spec: spec: containers: - name: kbazaar-api - image: ghcr.io/kbtg-kampus-classnest-se-java/workshopb2-group-1:ec371c2dd1e5d8e83d00f4f4c7f38183dec4e646 + image: ghcr.io/kbtg-kampus-classnest-se-java/workshopb2-group-1:809d2e16d7b1d9934f6f82af8b8896e6e4adbec3 imagePullPolicy: Always ports: - containerPort: 8080 From a56501d54ed5527698870c1ccb8f6316ec7b1279 Mon Sep 17 00:00:00 2001 From: WorabordinC Date: Sun, 31 Mar 2024 13:03:15 +0700 Subject: [PATCH 3/8] add code coverage CartItemService --- .../kbazaar/cartitem/CartItemServiceTest.java | 45 ++++++++++++++----- 1 file changed, 33 insertions(+), 12 deletions(-) diff --git a/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java b/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java index 549db94..71ecea5 100644 --- a/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java +++ b/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java @@ -1,30 +1,33 @@ package com.kampus.kbazaar.cartitem; -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyString; -import static org.mockito.Mockito.verify; -import static org.mockito.Mockito.when; - import com.kampus.kbazaar.cart.Cart; import com.kampus.kbazaar.cart.CartRepository; -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; -import java.util.Optional; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.*; + @ExtendWith(MockitoExtension.class) class CartItemServiceTest { - @InjectMocks private CartItemService cartItemService; + @InjectMocks + private CartItemService cartItemService; - @Mock private CartItemRepository cartItemRepository; + @Mock + private CartItemRepository cartItemRepository; - @Mock private CartRepository cartRepository; + @Mock + private CartRepository cartRepository; @Test void shouldAddCartItem() { @@ -57,4 +60,22 @@ void shouldAddCartItem() { verify(cartItemRepository).save(any()); } + + @Test + void shouldGetCartByUsernameWhenDataIsNotPresent() { + Cart cart = new Cart(); + cart.setId(1L); + cart.setUsername("mockusername"); + cart.setDiscount(BigDecimal.ZERO); + cart.setTotalDiscount(BigDecimal.ZERO); + cart.setPromotionCodes("promo-code"); + cart.setSubtotal(BigDecimal.ZERO); + cart.setGrandTotal(BigDecimal.ZERO); + + when(cartRepository.getCartByUsername(anyString())).thenReturn(Optional.empty()); + when(cartRepository.save(any())).thenReturn(cart); + + cartItemService.getCartByUsername("username"); + verify(cartRepository, times(1)).save(any()); + } } From 36b327704daf4e7e7954864e036173818d826420 Mon Sep 17 00:00:00 2001 From: WorabordinC Date: Sun, 31 Mar 2024 13:03:45 +0700 Subject: [PATCH 4/8] reformat --- .../kbazaar/cartitem/CartItemServiceTest.java | 26 ++++++++----------- 1 file changed, 11 insertions(+), 15 deletions(-) diff --git a/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java b/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java index 71ecea5..0083ad3 100644 --- a/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java +++ b/kbazaar/src/test/java/com/kampus/kbazaar/cartitem/CartItemServiceTest.java @@ -1,33 +1,29 @@ package com.kampus.kbazaar.cartitem; +import static org.mockito.ArgumentMatchers.any; +import static org.mockito.ArgumentMatchers.anyString; +import static org.mockito.Mockito.*; + import com.kampus.kbazaar.cart.Cart; import com.kampus.kbazaar.cart.CartRepository; +import java.math.BigDecimal; +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import java.math.BigDecimal; -import java.util.ArrayList; -import java.util.List; -import java.util.Optional; - -import static org.mockito.ArgumentMatchers.any; -import static org.mockito.ArgumentMatchers.anyString; -import static org.mockito.Mockito.*; - @ExtendWith(MockitoExtension.class) class CartItemServiceTest { - @InjectMocks - private CartItemService cartItemService; + @InjectMocks private CartItemService cartItemService; - @Mock - private CartItemRepository cartItemRepository; + @Mock private CartItemRepository cartItemRepository; - @Mock - private CartRepository cartRepository; + @Mock private CartRepository cartRepository; @Test void shouldAddCartItem() { From c384fdb91f569d7793648e0cdb8857c3558b2ad7 Mon Sep 17 00:00:00 2001 From: WorabordinC Date: Sun, 31 Mar 2024 13:11:38 +0700 Subject: [PATCH 5/8] clean comment --- .../com/kampus/kbazaar/cart/CartService.java | 48 ++----------------- 1 file changed, 3 insertions(+), 45 deletions(-) diff --git a/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java b/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java index b30649d..a20372c 100644 --- a/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java +++ b/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java @@ -1,6 +1,5 @@ package com.kampus.kbazaar.cart; -import com.kampus.kbazaar.cartitem.CartItemRepository; import com.kampus.kbazaar.cartitem.CartItemService; import com.kampus.kbazaar.promotion.PromotionApplyCartRequest; import com.kampus.kbazaar.shopper.Shopper; @@ -11,8 +10,6 @@ @Service public class CartService { - private final CartRepository cartRepository; - private final CartItemRepository cartItemRepository; private final CartItemService cartItemService; private final ShopperRepository shopperRepository; @@ -22,13 +19,7 @@ public CartResponse applyCartPromotion( return new CartResponse(); } - public CartService( - CartRepository cartRepository, - CartItemRepository cartItemRepository, - ShopperRepository shopperRepository, - CartItemService cartItemService) { - this.cartRepository = cartRepository; - this.cartItemRepository = cartItemRepository; + public CartService(ShopperRepository shopperRepository, CartItemService cartItemService) { this.shopperRepository = shopperRepository; this.cartItemService = cartItemService; } @@ -40,41 +31,8 @@ public List getAllCart() { List usernameList = shopperRepository.findAll().stream().map(Shopper::getUsername).toList(); - // for loop getcartby usernam - List carts = - usernameList.stream().map(cartItemService::getCartByUsername).toList(); + // for loop get cart by username - return carts; + return usernameList.stream().map(cartItemService::getCartByUsername).toList(); } - - // public List getAllCart() { - // List carts = cartRepository.findAll(); - // List cartResponseDto = new ArrayList<>(); - // for (Cart cart : carts) { - // List cartItems = cartItemRepository.findByUsername(cart.getUsername()); - // List cartItemDtos = new ArrayList<>(); - // for (CartItem cartItem : cartItems) { - // cartItemDtos.add( - // new CartItemDto( - // cartItem.getId(), - // cartItem.getUsername(), - // cartItem.getSku(), - // cartItem.getPrice(), - // cartItem.getQuantity(), - // cartItem.getDiscount(), - // cartItem.getPromotionCodes())); - // } - // - // CartResponseDto cartResponse = - // new CartResponseDto( - // cart.getUsername(), - // cartItemDtos, - // cart.getDiscount(), - // cart.getTotalDiscount(), - // cart.getSubtotal(), - // cart.getGrandTotal()); - // } - // - // return cartResponseDto; - // } } From 5a6261e2aa697100cee8c10735fa0b9eafdb59df Mon Sep 17 00:00:00 2001 From: robot Date: Sun, 31 Mar 2024 06:14:52 +0000 Subject: [PATCH 6/8] =?UTF-8?q?[skip=20actions]=20=F0=9F=A4=96=20change=20?= =?UTF-8?q?docker=20image=20version=20to=20c384fdb91f569d7793648e0cdb8857c?= =?UTF-8?q?3558b2ad7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- infra/gitops/dev/deployment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/infra/gitops/dev/deployment.yml b/infra/gitops/dev/deployment.yml index 6392fca..7619a93 100644 --- a/infra/gitops/dev/deployment.yml +++ b/infra/gitops/dev/deployment.yml @@ -15,7 +15,7 @@ spec: spec: containers: - name: kbazaar-api - image: ghcr.io/kbtg-kampus-classnest-se-java/workshopb2-group-1:809d2e16d7b1d9934f6f82af8b8896e6e4adbec3 + image: ghcr.io/kbtg-kampus-classnest-se-java/workshopb2-group-1:c384fdb91f569d7793648e0cdb8857c3558b2ad7 imagePullPolicy: Always ports: - containerPort: 8080 From 55708518210d5b9ee3973c135b0602a2fb4ca2ca Mon Sep 17 00:00:00 2001 From: WorabordinC Date: Sun, 31 Mar 2024 13:18:59 +0700 Subject: [PATCH 7/8] fix sonar issues --- .../main/java/com/kampus/kbazaar/cart/CartService.java | 8 +------- .../com/kampus/kbazaar/promotion/PromotionService.java | 7 +------ 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java b/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java index a20372c..beb8d40 100644 --- a/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java +++ b/kbazaar/src/main/java/com/kampus/kbazaar/cart/CartService.java @@ -1,7 +1,6 @@ package com.kampus.kbazaar.cart; import com.kampus.kbazaar.cartitem.CartItemService; -import com.kampus.kbazaar.promotion.PromotionApplyCartRequest; import com.kampus.kbazaar.shopper.Shopper; import com.kampus.kbazaar.shopper.ShopperRepository; import java.util.List; @@ -14,11 +13,6 @@ public class CartService { private final ShopperRepository shopperRepository; - public CartResponse applyCartPromotion( - String username, PromotionApplyCartRequest promotionApplyCartRequest) { - return new CartResponse(); - } - public CartService(ShopperRepository shopperRepository, CartItemService cartItemService) { this.shopperRepository = shopperRepository; this.cartItemService = cartItemService; @@ -27,7 +21,7 @@ public CartService(ShopperRepository shopperRepository, CartItemService cartItem // get all carts public List getAllCart() { - // getb all user + // get all user List usernameList = shopperRepository.findAll().stream().map(Shopper::getUsername).toList(); diff --git a/kbazaar/src/main/java/com/kampus/kbazaar/promotion/PromotionService.java b/kbazaar/src/main/java/com/kampus/kbazaar/promotion/PromotionService.java index 39117ce..e4afa4c 100644 --- a/kbazaar/src/main/java/com/kampus/kbazaar/promotion/PromotionService.java +++ b/kbazaar/src/main/java/com/kampus/kbazaar/promotion/PromotionService.java @@ -19,8 +19,6 @@ public class PromotionService { private final CartItemService cartItemService; - private final CartRepository cartRepository; - public PromotionService( PromotionRepository promotionRepository, CartItemRepository cartItemRepository, @@ -28,7 +26,6 @@ public PromotionService( CartItemService cartItemService) { this.promotionRepository = promotionRepository; this.cartItemRepository = cartItemRepository; - this.cartRepository = cartRepository; this.cartItemService = cartItemService; } @@ -57,8 +54,6 @@ public CartResponse applyPromotion(String username, Promotion promotion) { } } - CartResponse response = cartItemService.getCartByUsername(username); - - return response; + return cartItemService.getCartByUsername(username); } } From 93c1bf0cc4409fb53d9f9fbd9f61d0be4fd06fa1 Mon Sep 17 00:00:00 2001 From: robot Date: Sun, 31 Mar 2024 06:22:13 +0000 Subject: [PATCH 8/8] =?UTF-8?q?[skip=20actions]=20=F0=9F=A4=96=20change=20?= =?UTF-8?q?docker=20image=20version=20to=2055708518210d5b9ee3973c135b0602a?= =?UTF-8?q?2fb4ca2ca?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- infra/gitops/dev/deployment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/infra/gitops/dev/deployment.yml b/infra/gitops/dev/deployment.yml index 7619a93..72218f5 100644 --- a/infra/gitops/dev/deployment.yml +++ b/infra/gitops/dev/deployment.yml @@ -15,7 +15,7 @@ spec: spec: containers: - name: kbazaar-api - image: ghcr.io/kbtg-kampus-classnest-se-java/workshopb2-group-1:c384fdb91f569d7793648e0cdb8857c3558b2ad7 + image: ghcr.io/kbtg-kampus-classnest-se-java/workshopb2-group-1:55708518210d5b9ee3973c135b0602a2fb4ca2ca imagePullPolicy: Always ports: - containerPort: 8080