Skip to content

Commit

Permalink
added tests for ShoppingCart and CartItem entities
Browse files Browse the repository at this point in the history
  • Loading branch information
fmIst0 committed Sep 29, 2023
1 parent d864373 commit 377b337
Show file tree
Hide file tree
Showing 17 changed files with 696 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.experimental.Accessors;

@Accessors(chain = true)
@Data
public class CartItemCreateDto {
@NotNull
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package com.bookstore.dto.cartitem;

import lombok.Data;
import lombok.experimental.Accessors;

@Accessors(chain = true)
@Data
public class CartItemResponseDto {
private Long id;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@
import jakarta.validation.constraints.Min;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
import lombok.experimental.Accessors;

@Accessors(chain = true)
@Data
public class CartItemUpdateDto {
@NotNull
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,9 @@
import com.bookstore.dto.cartitem.CartItemResponseDto;
import java.util.Set;
import lombok.Data;
import lombok.experimental.Accessors;

@Accessors(chain = true)
@Data
public class ShoppingCartDto {
private Long userId;
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/bookstore/model/CartItem.java
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,9 @@
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

@Accessors(chain = true)
@Getter
@Setter
@EqualsAndHashCode
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/bookstore/model/ShoppingCart.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,10 @@
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import org.hibernate.annotations.SQLDelete;

@Accessors(chain = true)
@Getter
@Setter
@EqualsAndHashCode
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/bookstore/model/User.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,14 @@
import java.util.stream.Collectors;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import org.hibernate.annotations.SQLDelete;
import org.hibernate.annotations.Where;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;

@Accessors(chain = true)
@Getter
@Setter
@Entity
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,9 @@
import com.bookstore.model.Book;
import com.bookstore.model.CartItem;
import com.bookstore.model.ShoppingCart;
import com.bookstore.model.User;
import com.bookstore.repository.book.BookRepository;
import com.bookstore.repository.cartitem.CartItemRepository;
import com.bookstore.repository.shoppingcart.ShoppingCartRepository;
import com.bookstore.repository.user.UserRepository;
import com.bookstore.service.ShoppingCartService;
import jakarta.transaction.Transactional;
import java.util.HashSet;
Expand All @@ -27,7 +25,6 @@
public class ShoppingCartServiceImpl implements ShoppingCartService {
private final ShoppingCartRepository shoppingCartRepository;
private final ShoppingCartMapper shoppingCartMapper;
private final UserRepository userRepository;
private final CartItemMapper cartItemMapper;
private final CartItemRepository cartItemRepository;
private final BookRepository bookRepository;
Expand Down Expand Up @@ -55,7 +52,7 @@ public ShoppingCartDto saveBookToTheCart(Long userId, CartItemCreateDto cartItem
CartItem cartItem = cartItemMapper.toEntity(cartItemCreateDto, book, shoppingCart);
cartItemRepository.save(cartItem);
shoppingCart.addCartItemToSet(cartItem);
return shoppingCartMapper.toDto(getShoppingCartByUserId(userId));
return shoppingCartMapper.toDto(shoppingCart);
}

@Override
Expand All @@ -74,18 +71,18 @@ public ShoppingCartDto update(Long userId,

@Override
public void deleteCartItemFromTheCart(Long id) {
if (cartItemRepository.findById(id).isEmpty()) {
throw new EntityNotFoundException("Can't delete a cart item from DB with id: " + id);
}
cartItemRepository.deleteById(id);
}

@Override
public ShoppingCart getShoppingCartByUserId(Long id) {
User user = userRepository.findById(id)
.orElseThrow(() ->
new EntityNotFoundException("Can't find user in DB by id: " + id));
return shoppingCartRepository.findByUserId(user.getId())
return shoppingCartRepository.findByUserId(id)
.orElseThrow(() ->
new EntityNotFoundException(
"Can't find a shopping cart by id: " + user.getId()
"Can't find a shopping cart by user id: " + id
));
}

Expand Down
Loading

0 comments on commit 377b337

Please sign in to comment.