Modify user to member
This commit is contained in:
14
LICENSE
14
LICENSE
@@ -97,16 +97,16 @@ distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
parties to make or receive copies. Mere interaction with a member through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
An interactive member interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
tells the member that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
the interface presents a list of member commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
@@ -227,7 +227,7 @@ terms of section 4, provided that you also meet all of these conditions:
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
d) If the work has interactive member interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
@@ -299,9 +299,9 @@ tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
product received by a particular member, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
of the particular member or of the way in which the particular member
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.mangkyu.employment.interview.app.user.controller;
|
||||
package com.mangkyu.employment.interview.app.member.controller;
|
||||
|
||||
import com.mangkyu.employment.interview.app.user.dto.AddUserRequest;
|
||||
import com.mangkyu.employment.interview.app.user.service.UserService;
|
||||
import com.mangkyu.employment.interview.app.member.dto.AddMemberRequest;
|
||||
import com.mangkyu.employment.interview.app.member.service.MemberService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@@ -13,13 +13,13 @@ import javax.validation.Valid;
|
||||
|
||||
@RestController
|
||||
@RequiredArgsConstructor
|
||||
public class UserController {
|
||||
public class MemberController {
|
||||
|
||||
private final UserService userService;
|
||||
private final MemberService memberService;
|
||||
|
||||
@PostMapping("/user")
|
||||
public ResponseEntity<Void> addUser(@RequestBody @Valid final AddUserRequest addUserRequest) {
|
||||
userService.addUser(addUserRequest);
|
||||
public ResponseEntity<Void> addUser(@RequestBody @Valid final AddMemberRequest addMemberRequest) {
|
||||
memberService.addUser(addMemberRequest);
|
||||
|
||||
return ResponseEntity.status(HttpStatus.CREATED)
|
||||
.build();
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mangkyu.employment.interview.app.user.dto;
|
||||
package com.mangkyu.employment.interview.app.member.dto;
|
||||
|
||||
import com.mangkyu.employment.interview.enums.value.QuizCategory;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
@@ -22,7 +22,7 @@ import static com.mangkyu.employment.interview.app.quiz.constants.QuizConstants.
|
||||
@Builder
|
||||
@RequiredArgsConstructor
|
||||
@NoArgsConstructor(force = true)
|
||||
public class AddUserRequest {
|
||||
public class AddMemberRequest {
|
||||
|
||||
private final String resourceId = String.valueOf(UUID.randomUUID());
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.mangkyu.employment.interview.app.user.entity;
|
||||
package com.mangkyu.employment.interview.app.member.entity;
|
||||
|
||||
import com.mangkyu.employment.interview.app.common.entity.BaseEntity;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.entity.SolvedQuiz;
|
||||
@@ -18,12 +18,12 @@ import java.util.Set;
|
||||
import static com.mangkyu.employment.interview.app.quiz.constants.QuizConstants.DEFAULT_QUIZ_SIZE;
|
||||
|
||||
@Entity
|
||||
@Table(name = "user")
|
||||
@Table(name = "member")
|
||||
@Getter
|
||||
@Builder
|
||||
@NoArgsConstructor(force = true)
|
||||
@AllArgsConstructor
|
||||
public class User extends BaseEntity {
|
||||
public class Member extends BaseEntity {
|
||||
|
||||
@Column(nullable = false)
|
||||
private String resourceId;
|
||||
@@ -48,7 +48,7 @@ public class User extends BaseEntity {
|
||||
private Integer quizSize = DEFAULT_QUIZ_SIZE;
|
||||
|
||||
@Builder.Default
|
||||
@OneToMany(mappedBy = "user")
|
||||
@OneToMany(mappedBy = "member")
|
||||
private List<SolvedQuiz> solvedQuizList = new ArrayList<>();
|
||||
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.mangkyu.employment.interview.app.member.repository;
|
||||
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface MemberRepository extends JpaRepository <Member, Long> {
|
||||
|
||||
List<Member> findAllByIsEnableTrueAndQuizDaySetIs(final QuizDay QuizDay);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.mangkyu.employment.interview.app.member.service;
|
||||
|
||||
import com.mangkyu.employment.interview.app.member.dto.AddMemberRequest;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.member.repository.MemberRepository;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.modelmapper.ModelMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Transactional(readOnly = true)
|
||||
public class MemberService {
|
||||
|
||||
private final MemberRepository memberRepository;
|
||||
private final ModelMapper modelMapper;
|
||||
|
||||
@Transactional
|
||||
public void addUser(final AddMemberRequest addMemberRequest) {
|
||||
final Member member = modelMapper.map(addMemberRequest, Member.class);
|
||||
memberRepository.save(member);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public void disableUser(final Member member) {
|
||||
member.setIsEnable(false);
|
||||
memberRepository.save(member);
|
||||
}
|
||||
|
||||
public List<Member> getEnabledUserList(final QuizDay QuizDay) {
|
||||
return memberRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay);
|
||||
}
|
||||
}
|
||||
@@ -70,7 +70,7 @@ public class QuizService {
|
||||
}
|
||||
|
||||
public List<Quiz> getUnsolvedQuizList(final Long userId, final QuizLevel quizLevel, final Set<QuizCategory> quizCategorySet) {
|
||||
final Set<Long> solvedQuizIdList = solvedQuizRepository.findAllByUser_Id(userId)
|
||||
final Set<Long> solvedQuizIdList = solvedQuizRepository.findAllByMember_Id(userId)
|
||||
.stream()
|
||||
.map(v -> v.getQuiz().getId())
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.mangkyu.employment.interview.app.solvedquiz.entity;
|
||||
|
||||
import com.mangkyu.employment.interview.app.common.entity.BaseEntity;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.quiz.entity.Quiz;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
@@ -19,8 +19,8 @@ import javax.persistence.*;
|
||||
public class SolvedQuiz extends BaseEntity {
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "user_id")
|
||||
private User user;
|
||||
@JoinColumn(name = "member_id")
|
||||
private Member member;
|
||||
|
||||
@ManyToOne(fetch = FetchType.LAZY)
|
||||
@JoinColumn(name = "quiz_id")
|
||||
|
||||
@@ -7,6 +7,6 @@ import java.util.List;
|
||||
|
||||
public interface SolvedQuizRepository extends JpaRepository <SolvedQuiz, Long> {
|
||||
|
||||
List<SolvedQuiz> findAllByUser_Id(Long userId);
|
||||
List<SolvedQuiz> findAllByMember_Id(Long userId);
|
||||
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
package com.mangkyu.employment.interview.app.solvedquiz.service;
|
||||
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.quiz.entity.Quiz;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.entity.SolvedQuiz;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.repository.SolvedQuizRepository;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
@@ -20,17 +20,17 @@ public class SolvedQuizService {
|
||||
private final SolvedQuizRepository solvedQuizRepository;
|
||||
|
||||
@Transactional
|
||||
public void addSolvedQuizList(final User user, final List<Quiz> quizList) {
|
||||
public void addSolvedQuizList(final Member member, final List<Quiz> quizList) {
|
||||
final List<SolvedQuiz> solvedQuizList = quizList.stream()
|
||||
.map(quiz -> createSolvedQuizEntity(user, quiz))
|
||||
.map(quiz -> createSolvedQuizEntity(member, quiz))
|
||||
.collect(Collectors.toList());
|
||||
|
||||
solvedQuizRepository.saveAll(solvedQuizList);
|
||||
}
|
||||
|
||||
private SolvedQuiz createSolvedQuizEntity(final User user, final Quiz quiz) {
|
||||
private SolvedQuiz createSolvedQuizEntity(final Member member, final Quiz quiz) {
|
||||
return SolvedQuiz.builder()
|
||||
.user(user)
|
||||
.member(member)
|
||||
.quiz(quiz).build();
|
||||
}
|
||||
|
||||
|
||||
@@ -1,13 +0,0 @@
|
||||
package com.mangkyu.employment.interview.app.user.repository;
|
||||
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface UserRepository extends JpaRepository <User, Long> {
|
||||
|
||||
List<User> findAllByIsEnableTrueAndQuizDaySetIs(final QuizDay QuizDay);
|
||||
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
package com.mangkyu.employment.interview.app.user.service;
|
||||
|
||||
import com.mangkyu.employment.interview.app.user.dto.AddUserRequest;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.app.user.repository.UserRepository;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.modelmapper.ModelMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
@Transactional(readOnly = true)
|
||||
public class UserService {
|
||||
|
||||
private final UserRepository userRepository;
|
||||
private final ModelMapper modelMapper;
|
||||
|
||||
@Transactional
|
||||
public void addUser(final AddUserRequest addUserRequest) {
|
||||
final User user = modelMapper.map(addUserRequest, User.class);
|
||||
userRepository.save(user);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public void disableUser(final User user) {
|
||||
user.setIsEnable(false);
|
||||
userRepository.save(user);
|
||||
}
|
||||
|
||||
public List<User> getEnabledUserList(final QuizDay QuizDay) {
|
||||
return userRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay);
|
||||
}
|
||||
}
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.mangkyu.employment.interview.cron;
|
||||
|
||||
import com.mangkyu.employment.interview.app.mail.service.MailService;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.quiz.entity.Quiz;
|
||||
import com.mangkyu.employment.interview.app.quiz.service.QuizService;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.service.SolvedQuizService;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.app.user.service.UserService;
|
||||
import com.mangkyu.employment.interview.app.member.service.MemberService;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -22,7 +22,7 @@ import java.util.List;
|
||||
@Slf4j
|
||||
public class SendQuizCronJob {
|
||||
|
||||
private final UserService userService;
|
||||
private final MemberService memberService;
|
||||
private final QuizService quizService;
|
||||
private final MailService mailService;
|
||||
private final SolvedQuizService solvedQuizService;
|
||||
@@ -37,23 +37,23 @@ public class SendQuizCronJob {
|
||||
@Transactional
|
||||
public void sendQuizMail() {
|
||||
final DayOfWeek dayOfWeek = LocalDate.now().getDayOfWeek();
|
||||
final List<User> userList = userService.getEnabledUserList(QuizDay.findQuizDay(dayOfWeek));
|
||||
for (final User user : userList) {
|
||||
sendUnsolvedQuizForUser(user);
|
||||
final List<Member> memberList = memberService.getEnabledUserList(QuizDay.findQuizDay(dayOfWeek));
|
||||
for (final Member member : memberList) {
|
||||
sendUnsolvedQuizForUser(member);
|
||||
}
|
||||
}
|
||||
|
||||
private void sendUnsolvedQuizForUser(final User user) {
|
||||
final List<Quiz> unsolvedQuizList = quizService.getUnsolvedQuizList(user.getId(), user.getQuizLevel(), user.getQuizCategorySet());
|
||||
final boolean isLastMail = isLastMail(unsolvedQuizList, user.getQuizSize());
|
||||
private void sendUnsolvedQuizForUser(final Member member) {
|
||||
final List<Quiz> unsolvedQuizList = quizService.getUnsolvedQuizList(member.getId(), member.getQuizLevel(), member.getQuizCategorySet());
|
||||
final boolean isLastMail = isLastMail(unsolvedQuizList, member.getQuizSize());
|
||||
|
||||
final List<Quiz> randomQuizList = quizService.getRandomQuizListUnderLimit(unsolvedQuizList, user.getQuizSize());
|
||||
final List<Quiz> randomQuizList = quizService.getRandomQuizListUnderLimit(unsolvedQuizList, member.getQuizSize());
|
||||
if (isLastMail) {
|
||||
userService.disableUser(user);
|
||||
memberService.disableUser(member);
|
||||
}
|
||||
|
||||
mailService.sendMail(user.getEmail(), randomQuizList, isLastMail);
|
||||
solvedQuizService.addSolvedQuizList(user, randomQuizList);
|
||||
mailService.sendMail(member.getEmail(), randomQuizList, isLastMail);
|
||||
solvedQuizService.addSolvedQuizList(member, randomQuizList);
|
||||
}
|
||||
|
||||
private boolean isLastMail(final List<Quiz> quizList, final Integer quizSize) {
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
package com.mangkyu.employment.interview.app.user.controller;
|
||||
package com.mangkyu.employment.interview.app.member.controller;
|
||||
|
||||
import com.google.gson.Gson;
|
||||
import com.mangkyu.employment.interview.app.user.dto.AddUserRequest;
|
||||
import com.mangkyu.employment.interview.app.user.service.UserService;
|
||||
import com.mangkyu.employment.interview.app.member.dto.AddMemberRequest;
|
||||
import com.mangkyu.employment.interview.app.member.service.MemberService;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizCategory;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizLevel;
|
||||
@@ -20,11 +20,11 @@ import java.util.Set;
|
||||
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||
|
||||
@WebMvcTest(UserController.class)
|
||||
class UserControllerTest {
|
||||
@WebMvcTest(MemberController.class)
|
||||
class MemberControllerTest {
|
||||
|
||||
@MockBean
|
||||
private UserService userService;
|
||||
private MemberService memberService;
|
||||
|
||||
@Autowired
|
||||
private MockMvc mockMvc;
|
||||
@@ -32,7 +32,7 @@ class UserControllerTest {
|
||||
@Test
|
||||
public void addUserFail_EmailIsEmpty() throws Exception {
|
||||
// given
|
||||
final AddUserRequest addUserRequest = AddUserRequest.builder()
|
||||
final AddMemberRequest addMemberRequest = AddMemberRequest.builder()
|
||||
.email("")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.build();
|
||||
@@ -40,7 +40,7 @@ class UserControllerTest {
|
||||
// when
|
||||
final ResultActions result = mockMvc.perform(
|
||||
MockMvcRequestBuilders.post("/user")
|
||||
.content(new Gson().toJson(addUserRequest))
|
||||
.content(new Gson().toJson(addMemberRequest))
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
);
|
||||
|
||||
@@ -51,7 +51,7 @@ class UserControllerTest {
|
||||
@Test
|
||||
public void addUserFail_NotEmailFormat() throws Exception {
|
||||
// given
|
||||
final AddUserRequest addUserRequest = AddUserRequest.builder()
|
||||
final AddMemberRequest addMemberRequest = AddMemberRequest.builder()
|
||||
.email("asdas")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.build();
|
||||
@@ -59,7 +59,7 @@ class UserControllerTest {
|
||||
// when
|
||||
final ResultActions result = mockMvc.perform(
|
||||
MockMvcRequestBuilders.post("/user")
|
||||
.content(new Gson().toJson(addUserRequest))
|
||||
.content(new Gson().toJson(addMemberRequest))
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
);
|
||||
|
||||
@@ -70,7 +70,7 @@ class UserControllerTest {
|
||||
@Test
|
||||
public void addUserFail_QuizLevelIsNull() throws Exception {
|
||||
// given
|
||||
final AddUserRequest addUserRequest = AddUserRequest.builder()
|
||||
final AddMemberRequest addMemberRequest = AddMemberRequest.builder()
|
||||
.email("whalsrb1226@gmail.com")
|
||||
.quizLevel(null)
|
||||
.build();
|
||||
@@ -78,7 +78,7 @@ class UserControllerTest {
|
||||
// when
|
||||
final ResultActions result = mockMvc.perform(
|
||||
MockMvcRequestBuilders.post("/user")
|
||||
.content(new Gson().toJson(addUserRequest))
|
||||
.content(new Gson().toJson(addMemberRequest))
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
);
|
||||
|
||||
@@ -90,7 +90,7 @@ class UserControllerTest {
|
||||
@Test
|
||||
public void addUserFail_QuizDaySetIsEmpty() throws Exception {
|
||||
// given
|
||||
final AddUserRequest addUserRequest = AddUserRequest.builder()
|
||||
final AddMemberRequest addMemberRequest = AddMemberRequest.builder()
|
||||
.email("whalsrb1226@gmail.com")
|
||||
.quizLevel(QuizLevel.NEW)
|
||||
.build();
|
||||
@@ -98,7 +98,7 @@ class UserControllerTest {
|
||||
// when
|
||||
final ResultActions result = mockMvc.perform(
|
||||
MockMvcRequestBuilders.post("/user")
|
||||
.content(new Gson().toJson(addUserRequest))
|
||||
.content(new Gson().toJson(addMemberRequest))
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
);
|
||||
|
||||
@@ -115,7 +115,7 @@ class UserControllerTest {
|
||||
quizDaySet.add(QuizDay.WEDNESDAY);
|
||||
quizDaySet.add(QuizDay.FRIDAY);
|
||||
|
||||
final AddUserRequest addUserRequest = AddUserRequest.builder()
|
||||
final AddMemberRequest addMemberRequest = AddMemberRequest.builder()
|
||||
.email("whalsrb1226@gmail.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.quizDaySet(quizDaySet)
|
||||
@@ -124,7 +124,7 @@ class UserControllerTest {
|
||||
// when
|
||||
final ResultActions result = mockMvc.perform(
|
||||
MockMvcRequestBuilders.post("/user")
|
||||
.content(new Gson().toJson(addUserRequest))
|
||||
.content(new Gson().toJson(addMemberRequest))
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
);
|
||||
|
||||
@@ -145,7 +145,7 @@ class UserControllerTest {
|
||||
quizCategorySet.add(QuizCategory.DATABASE);
|
||||
quizCategorySet.add(QuizCategory.EXPERIENCE);
|
||||
|
||||
final AddUserRequest addUserRequest = AddUserRequest.builder()
|
||||
final AddMemberRequest addMemberRequest = AddMemberRequest.builder()
|
||||
.email("whalsrb1226@gmail.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.quizDaySet(quizDaySet)
|
||||
@@ -155,7 +155,7 @@ class UserControllerTest {
|
||||
// when
|
||||
final ResultActions result = mockMvc.perform(
|
||||
MockMvcRequestBuilders.post("/user")
|
||||
.content(new Gson().toJson(addUserRequest))
|
||||
.content(new Gson().toJson(addMemberRequest))
|
||||
.contentType(MediaType.APPLICATION_JSON)
|
||||
);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.mangkyu.employment.interview.app.user.repository;
|
||||
package com.mangkyu.employment.interview.app.member.repository;
|
||||
|
||||
import com.mangkyu.employment.interview.JpaTestConfig;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizCategory;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import com.mangkyu.employment.interview.testutils.EntityCreationUtils;
|
||||
@@ -15,13 +15,13 @@ import java.util.Set;
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@JpaTestConfig
|
||||
class UserRepositoryTest {
|
||||
class MemberRepositoryTest {
|
||||
|
||||
@Autowired
|
||||
private UserRepository userRepository;
|
||||
private MemberRepository memberRepository;
|
||||
|
||||
@Test
|
||||
public void selectUserListByCycle() {
|
||||
public void selectMemberListByCycle() {
|
||||
// given
|
||||
final Set<QuizDay> quizDaySet = new HashSet<>();
|
||||
quizDaySet.add(QuizDay.MONDAY);
|
||||
@@ -33,14 +33,14 @@ class UserRepositoryTest {
|
||||
quizCategorySet.add(QuizCategory.DATABASE);
|
||||
quizCategorySet.add(QuizCategory.EXPERIENCE);
|
||||
|
||||
final User user = EntityCreationUtils.user(5, quizDaySet, quizCategorySet);
|
||||
final Member member = EntityCreationUtils.member(5, quizDaySet, quizCategorySet);
|
||||
|
||||
final User savedUser = userRepository.save(user);
|
||||
userRepository.save(savedUser);
|
||||
final Member savedMember = memberRepository.save(member);
|
||||
memberRepository.save(savedMember);
|
||||
|
||||
// when
|
||||
final List<User> dailyResult = userRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay.MONDAY);
|
||||
final List<User> regularResult = userRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay.THURSDAY);
|
||||
final List<Member> dailyResult = memberRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay.MONDAY);
|
||||
final List<Member> regularResult = memberRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay.THURSDAY);
|
||||
|
||||
// then
|
||||
assertThat(dailyResult.size()).isOne();
|
||||
@@ -48,7 +48,7 @@ class UserRepositoryTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
public void insertUser() {
|
||||
public void insertMember() {
|
||||
// given
|
||||
final Set<QuizDay> quizDaySet = new HashSet<>();
|
||||
quizDaySet.add(QuizDay.MONDAY);
|
||||
@@ -60,19 +60,19 @@ class UserRepositoryTest {
|
||||
quizCategorySet.add(QuizCategory.DATABASE);
|
||||
quizCategorySet.add(QuizCategory.EXPERIENCE);
|
||||
|
||||
final User user = EntityCreationUtils.user(5, quizDaySet, quizCategorySet);
|
||||
final Member member = EntityCreationUtils.member(5, quizDaySet, quizCategorySet);
|
||||
|
||||
// when
|
||||
final User result = userRepository.save(user);
|
||||
final Member result = memberRepository.save(member);
|
||||
|
||||
// then
|
||||
assertThat(result.getEmail()).isEqualTo(user.getEmail());
|
||||
assertThat(result.getQuizLevel()).isEqualTo(user.getQuizLevel());
|
||||
assertThat(result.getQuizSize()).isEqualTo(user.getQuizSize());
|
||||
assertThat(result.getEmail()).isEqualTo(member.getEmail());
|
||||
assertThat(result.getQuizLevel()).isEqualTo(member.getQuizLevel());
|
||||
assertThat(result.getQuizSize()).isEqualTo(member.getQuizSize());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateUserDisabled() {
|
||||
public void updateMemberDisabled() {
|
||||
// given
|
||||
final Set<QuizDay> quizDaySet = new HashSet<>();
|
||||
quizDaySet.add(QuizDay.MONDAY);
|
||||
@@ -84,14 +84,14 @@ class UserRepositoryTest {
|
||||
quizCategorySet.add(QuizCategory.DATABASE);
|
||||
quizCategorySet.add(QuizCategory.EXPERIENCE);
|
||||
|
||||
final User user = EntityCreationUtils.user(3, quizDaySet, quizCategorySet);
|
||||
final Member member = EntityCreationUtils.member(3, quizDaySet, quizCategorySet);
|
||||
|
||||
final User savedUser = userRepository.save(user);
|
||||
savedUser.setIsEnable(false);
|
||||
userRepository.save(savedUser);
|
||||
final Member savedMember = memberRepository.save(member);
|
||||
savedMember.setIsEnable(false);
|
||||
memberRepository.save(savedMember);
|
||||
|
||||
// when
|
||||
final List<User> result = userRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay.MONDAY);
|
||||
final List<Member> result = memberRepository.findAllByIsEnableTrueAndQuizDaySetIs(QuizDay.MONDAY);
|
||||
|
||||
// then
|
||||
assertThat(result.size()).isZero();
|
||||
@@ -1,12 +1,11 @@
|
||||
package com.mangkyu.employment.interview.app.user.service;
|
||||
package com.mangkyu.employment.interview.app.member.service;
|
||||
|
||||
import com.mangkyu.employment.interview.app.user.dto.AddUserRequest;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.app.user.repository.UserRepository;
|
||||
import com.mangkyu.employment.interview.app.member.dto.AddMemberRequest;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.member.repository.MemberRepository;
|
||||
import com.mangkyu.employment.interview.config.modelmapper.ModelMapperConfig;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizLevel;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -14,7 +13,6 @@ import org.mockito.Mock;
|
||||
import org.mockito.Spy;
|
||||
import org.mockito.junit.jupiter.MockitoExtension;
|
||||
import org.modelmapper.ModelMapper;
|
||||
import org.modelmapper.config.Configuration;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashSet;
|
||||
@@ -25,13 +23,13 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||
import static org.mockito.Mockito.*;
|
||||
|
||||
@ExtendWith(MockitoExtension.class)
|
||||
class UserServiceTest {
|
||||
class MemberServiceTest {
|
||||
|
||||
@InjectMocks
|
||||
private UserService target;
|
||||
private MemberService target;
|
||||
|
||||
@Mock
|
||||
private UserRepository userRepository;
|
||||
private MemberRepository memberRepository;
|
||||
@Spy
|
||||
private ModelMapper modelMapper = new ModelMapperConfig().modelMapper();
|
||||
|
||||
@@ -45,14 +43,14 @@ class UserServiceTest {
|
||||
quizDaySet.add(QuizDay.WEDNESDAY);
|
||||
quizDaySet.add(QuizDay.SATURDAY);
|
||||
|
||||
final AddUserRequest addUserRequest = AddUserRequest.builder()
|
||||
final AddMemberRequest addMemberRequest = AddMemberRequest.builder()
|
||||
.email("whalsrb1226@gmail.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.quizDaySet(quizDaySet)
|
||||
.build();
|
||||
|
||||
// when
|
||||
target.addUser(addUserRequest);
|
||||
target.addUser(addMemberRequest);
|
||||
|
||||
// then
|
||||
}
|
||||
@@ -60,40 +58,40 @@ class UserServiceTest {
|
||||
@Test
|
||||
public void disableUserSuccess() {
|
||||
// given
|
||||
final User user = user(true);
|
||||
final Member member = user(true);
|
||||
|
||||
// when
|
||||
target.disableUser(user);
|
||||
target.disableUser(member);
|
||||
|
||||
// then
|
||||
|
||||
// verify
|
||||
verify(userRepository, times(1)).save(user);
|
||||
verify(memberRepository, times(1)).save(member);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getEnabledUserListSuccess() {
|
||||
// given
|
||||
final List<User> enabledUserList = Arrays.asList(user(true), user(true));
|
||||
doReturn(enabledUserList).when(userRepository).findAllByIsEnableTrueAndQuizDaySetIs(quizDay);
|
||||
final List<Member> enabledMemberList = Arrays.asList(user(true), user(true));
|
||||
doReturn(enabledMemberList).when(memberRepository).findAllByIsEnableTrueAndQuizDaySetIs(quizDay);
|
||||
|
||||
// when
|
||||
final List<User> result = target.getEnabledUserList(quizDay);
|
||||
final List<Member> result = target.getEnabledUserList(quizDay);
|
||||
|
||||
// then
|
||||
assertThat(result.size()).isEqualTo(enabledUserList.size());
|
||||
assertThat(result.size()).isEqualTo(enabledMemberList.size());
|
||||
|
||||
// verify
|
||||
verify(userRepository, times(1)).findAllByIsEnableTrueAndQuizDaySetIs(quizDay);
|
||||
verify(memberRepository, times(1)).findAllByIsEnableTrueAndQuizDaySetIs(quizDay);
|
||||
}
|
||||
|
||||
private User user(final boolean isEnable) {
|
||||
final User user = User.builder()
|
||||
private Member user(final boolean isEnable) {
|
||||
final Member member = Member.builder()
|
||||
.email("minkyu@test.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.build();
|
||||
user.setIsEnable(isEnable);
|
||||
return user;
|
||||
member.setIsEnable(isEnable);
|
||||
return member;
|
||||
}
|
||||
|
||||
|
||||
@@ -202,7 +202,7 @@ class QuizServiceTest {
|
||||
quizCategorySet.add(QuizCategory.DATABASE);
|
||||
quizCategorySet.add(QuizCategory.EXPERIENCE);
|
||||
|
||||
doReturn(solvedQuizList).when(solvedQuizRepository).findAllByUser_Id(userId);
|
||||
doReturn(solvedQuizList).when(solvedQuizRepository).findAllByMember_Id(userId);
|
||||
doReturn(unsolvedQuizList).when(quizRepository).customFindByIdNotInAndQuizCategoryInAndQuizLevel(solvedQuizIdList, quizCategorySet, quizLevel);
|
||||
|
||||
// when
|
||||
@@ -223,7 +223,7 @@ class QuizServiceTest {
|
||||
quizCategorySet.add(QuizCategory.DATABASE);
|
||||
quizCategorySet.add(QuizCategory.EXPERIENCE);
|
||||
|
||||
doReturn(solvedQuizList).when(solvedQuizRepository).findAllByUser_Id(userId);
|
||||
doReturn(solvedQuizList).when(solvedQuizRepository).findAllByMember_Id(userId);
|
||||
doReturn(unsolvedQuizList).when(quizRepository).customFindByIdNotInAndQuizCategoryInAndQuizLevel(Collections.emptySet(), quizCategorySet, quizLevel);
|
||||
|
||||
// when
|
||||
|
||||
@@ -4,8 +4,8 @@ import com.mangkyu.employment.interview.JpaTestConfig;
|
||||
import com.mangkyu.employment.interview.app.quiz.entity.Quiz;
|
||||
import com.mangkyu.employment.interview.app.quiz.repository.QuizRepository;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.entity.SolvedQuiz;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.app.user.repository.UserRepository;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.member.repository.MemberRepository;
|
||||
import com.mangkyu.employment.interview.testutils.EntityCreationUtils;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -22,25 +22,25 @@ class SolvedQuizRepositoryTest {
|
||||
private QuizRepository quizRepository;
|
||||
|
||||
@Autowired
|
||||
private UserRepository userRepository;
|
||||
private MemberRepository memberRepository;
|
||||
|
||||
@Test
|
||||
public void insertQuiz() {
|
||||
// given
|
||||
final User user = EntityCreationUtils.user();
|
||||
final Member member = EntityCreationUtils.member();
|
||||
final Quiz quiz = EntityCreationUtils.quiz();
|
||||
|
||||
final Quiz quizResult = quizRepository.save(quiz);
|
||||
final User userResult = userRepository.save(user);
|
||||
final Member memberResult = memberRepository.save(member);
|
||||
|
||||
final SolvedQuiz solvedQuiz = EntityCreationUtils.solvedQuiz(quiz, user);
|
||||
final SolvedQuiz solvedQuiz = EntityCreationUtils.solvedQuiz(quiz, member);
|
||||
|
||||
// when
|
||||
final SolvedQuiz result = solvedQuizRepository.save(solvedQuiz);
|
||||
|
||||
// then
|
||||
assertThat(result.getQuiz()).isEqualTo(quizResult);
|
||||
assertThat(result.getUser()).isEqualTo(userResult);
|
||||
assertThat(result.getMember()).isEqualTo(memberResult);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,10 +1,10 @@
|
||||
package com.mangkyu.employment.interview.app.solvedquiz.service;
|
||||
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.quiz.entity.Quiz;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizCategory;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizLevel;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.repository.SolvedQuizRepository;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
import org.mockito.InjectMocks;
|
||||
@@ -27,19 +27,19 @@ class SolvedQuizServiceTest {
|
||||
@Test
|
||||
public void addSolvedQuizListSuccess() {
|
||||
// given
|
||||
final User user = user();
|
||||
final Member member = user();
|
||||
final List<Quiz> quizList = quizList();
|
||||
|
||||
// when
|
||||
target.addSolvedQuizList(user, quizList);
|
||||
target.addSolvedQuizList(member, quizList);
|
||||
|
||||
// then
|
||||
|
||||
// verify
|
||||
}
|
||||
|
||||
private User user() {
|
||||
return User.builder()
|
||||
private Member user() {
|
||||
return Member.builder()
|
||||
.email("minkyu@test.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.build();
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
package com.mangkyu.employment.interview.cron;
|
||||
|
||||
import com.mangkyu.employment.interview.app.mail.service.MailService;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.app.quiz.entity.Quiz;
|
||||
import com.mangkyu.employment.interview.app.quiz.service.QuizService;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.service.SolvedQuizService;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.app.user.service.UserService;
|
||||
import com.mangkyu.employment.interview.app.member.service.MemberService;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizLevel;
|
||||
import org.junit.jupiter.api.BeforeEach;
|
||||
@@ -29,7 +29,7 @@ class SendQuizCronJobTest {
|
||||
private SendQuizCronJob target;
|
||||
|
||||
@Mock
|
||||
private UserService userService;
|
||||
private MemberService memberService;
|
||||
@Mock
|
||||
private QuizService quizService;
|
||||
@Mock
|
||||
@@ -37,19 +37,19 @@ class SendQuizCronJobTest {
|
||||
@Mock
|
||||
private SolvedQuizService solvedQuizService;
|
||||
|
||||
private User user;
|
||||
private List<User> userList;
|
||||
private Member member;
|
||||
private List<Member> memberList;
|
||||
private QuizDay quizDay;
|
||||
|
||||
@BeforeEach
|
||||
public void init() {
|
||||
user = User.builder()
|
||||
member = Member.builder()
|
||||
.email("minkyu@test.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.quizSize(3)
|
||||
.build();
|
||||
|
||||
userList = Collections.singletonList(user);
|
||||
memberList = Collections.singletonList(member);
|
||||
quizDay = QuizDay.findQuizDay(LocalDate.now().getDayOfWeek());
|
||||
}
|
||||
|
||||
@@ -57,7 +57,7 @@ class SendQuizCronJobTest {
|
||||
public void sendQuizMailDaily_UserNotExists() {
|
||||
// given
|
||||
doReturn(Collections.emptyList())
|
||||
.when(userService)
|
||||
.when(memberService)
|
||||
.getEnabledUserList(quizDay);
|
||||
|
||||
// when
|
||||
@@ -66,11 +66,11 @@ class SendQuizCronJobTest {
|
||||
// then
|
||||
|
||||
// verify
|
||||
verify(quizService, times(0)).getUnsolvedQuizList(user.getId(), user.getQuizLevel(), user.getQuizCategorySet());
|
||||
verify(quizService, times(0)).getUnsolvedQuizList(member.getId(), member.getQuizLevel(), member.getQuizCategorySet());
|
||||
verify(quizService, times(0)).getRandomQuizListUnderLimit(anyList(), anyInt());
|
||||
verify(userService, times(0)).disableUser(user);
|
||||
verify(memberService, times(0)).disableUser(member);
|
||||
verify(mailService, times(0)).sendMail(anyString(), anyList(), anyBoolean());
|
||||
verify(solvedQuizService, times(0)).addSolvedQuizList(any(User.class), anyList());
|
||||
verify(solvedQuizService, times(0)).addSolvedQuizList(any(Member.class), anyList());
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -79,15 +79,15 @@ class SendQuizCronJobTest {
|
||||
final List<Quiz> unsolvedQuizList = quizList(5);
|
||||
final List<Quiz> randomQuizList = unsolvedQuizList.subList(0, 3);
|
||||
|
||||
doReturn(userList)
|
||||
.when(userService)
|
||||
doReturn(memberList)
|
||||
.when(memberService)
|
||||
.getEnabledUserList(quizDay);
|
||||
doReturn(unsolvedQuizList)
|
||||
.when(quizService)
|
||||
.getUnsolvedQuizList(user.getId(), user.getQuizLevel(), user.getQuizCategorySet());
|
||||
.getUnsolvedQuizList(member.getId(), member.getQuizLevel(), member.getQuizCategorySet());
|
||||
doReturn(randomQuizList)
|
||||
.when(quizService)
|
||||
.getRandomQuizListUnderLimit(unsolvedQuizList, user.getQuizSize());
|
||||
.getRandomQuizListUnderLimit(unsolvedQuizList, member.getQuizSize());
|
||||
|
||||
// when
|
||||
target.sendQuizMail();
|
||||
@@ -95,11 +95,11 @@ class SendQuizCronJobTest {
|
||||
// then
|
||||
|
||||
// verify
|
||||
verify(quizService, times(1)).getUnsolvedQuizList(user.getId(), user.getQuizLevel(), user.getQuizCategorySet());
|
||||
verify(quizService, times(1)).getRandomQuizListUnderLimit(unsolvedQuizList, user.getQuizSize());
|
||||
verify(userService, times(0)).disableUser(user);
|
||||
verify(mailService, times(1)).sendMail(user.getEmail(), randomQuizList, false);
|
||||
verify(solvedQuizService, times(1)).addSolvedQuizList(user, randomQuizList);
|
||||
verify(quizService, times(1)).getUnsolvedQuizList(member.getId(), member.getQuizLevel(), member.getQuizCategorySet());
|
||||
verify(quizService, times(1)).getRandomQuizListUnderLimit(unsolvedQuizList, member.getQuizSize());
|
||||
verify(memberService, times(0)).disableUser(member);
|
||||
verify(mailService, times(1)).sendMail(member.getEmail(), randomQuizList, false);
|
||||
verify(solvedQuizService, times(1)).addSolvedQuizList(member, randomQuizList);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -108,15 +108,15 @@ class SendQuizCronJobTest {
|
||||
final List<Quiz> unsolvedQuizList = quizList(3);
|
||||
final List<Quiz> randomQuizList = unsolvedQuizList.subList(0, 3);
|
||||
|
||||
doReturn(userList)
|
||||
.when(userService)
|
||||
doReturn(memberList)
|
||||
.when(memberService)
|
||||
.getEnabledUserList(quizDay);
|
||||
doReturn(unsolvedQuizList)
|
||||
.when(quizService)
|
||||
.getUnsolvedQuizList(user.getId(), user.getQuizLevel(), user.getQuizCategorySet());
|
||||
.getUnsolvedQuizList(member.getId(), member.getQuizLevel(), member.getQuizCategorySet());
|
||||
doReturn(randomQuizList)
|
||||
.when(quizService)
|
||||
.getRandomQuizListUnderLimit(unsolvedQuizList, user.getQuizSize());
|
||||
.getRandomQuizListUnderLimit(unsolvedQuizList, member.getQuizSize());
|
||||
|
||||
// when
|
||||
target.sendQuizMail();
|
||||
@@ -124,11 +124,11 @@ class SendQuizCronJobTest {
|
||||
// then
|
||||
|
||||
// verify
|
||||
verify(quizService, times(1)).getUnsolvedQuizList(user.getId(), user.getQuizLevel(), user.getQuizCategorySet());
|
||||
verify(quizService, times(1)).getRandomQuizListUnderLimit(unsolvedQuizList, user.getQuizSize());
|
||||
verify(userService, times(1)).disableUser(user);
|
||||
verify(mailService, times(1)).sendMail(user.getEmail(), randomQuizList, true);
|
||||
verify(solvedQuizService, times(1)).addSolvedQuizList(user, randomQuizList);
|
||||
verify(quizService, times(1)).getUnsolvedQuizList(member.getId(), member.getQuizLevel(), member.getQuizCategorySet());
|
||||
verify(quizService, times(1)).getRandomQuizListUnderLimit(unsolvedQuizList, member.getQuizSize());
|
||||
verify(memberService, times(1)).disableUser(member);
|
||||
verify(mailService, times(1)).sendMail(member.getEmail(), randomQuizList, true);
|
||||
verify(solvedQuizService, times(1)).addSolvedQuizList(member, randomQuizList);
|
||||
}
|
||||
|
||||
private List<Quiz> quizList(final int size) {
|
||||
|
||||
@@ -3,7 +3,7 @@ package com.mangkyu.employment.interview.testutils;
|
||||
import com.mangkyu.employment.interview.app.answer.entity.Answer;
|
||||
import com.mangkyu.employment.interview.app.quiz.entity.Quiz;
|
||||
import com.mangkyu.employment.interview.app.solvedquiz.entity.SolvedQuiz;
|
||||
import com.mangkyu.employment.interview.app.user.entity.User;
|
||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizCategory;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizDay;
|
||||
import com.mangkyu.employment.interview.enums.value.QuizLevel;
|
||||
@@ -38,20 +38,20 @@ public final class EntityCreationUtils {
|
||||
return quiz;
|
||||
}
|
||||
|
||||
public static User user() {
|
||||
final User user = User.builder()
|
||||
public static Member member() {
|
||||
final Member member = Member.builder()
|
||||
.resourceId(UUID.randomUUID().toString())
|
||||
.email("minkyu@test.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
.solvedQuizList(Collections.emptyList())
|
||||
.build();
|
||||
ReflectionTestUtils.setField(user, "createdAt", LocalDateTime.now());
|
||||
ReflectionTestUtils.setField(member, "createdAt", LocalDateTime.now());
|
||||
|
||||
return user;
|
||||
return member;
|
||||
}
|
||||
|
||||
public static User user(final int quizSize, final Set<QuizDay> daySet, final Set<QuizCategory> categorySet) {
|
||||
final User user = User.builder()
|
||||
public static Member member(final int quizSize, final Set<QuizDay> daySet, final Set<QuizCategory> categorySet) {
|
||||
final Member member = Member.builder()
|
||||
.resourceId( UUID.randomUUID().toString())
|
||||
.email("minkyu@test.com")
|
||||
.quizLevel(QuizLevel.JUNIOR)
|
||||
@@ -60,15 +60,15 @@ public final class EntityCreationUtils {
|
||||
.quizDaySet(daySet)
|
||||
.quizCategorySet(categorySet)
|
||||
.build();
|
||||
ReflectionTestUtils.setField(user, "createdAt", LocalDateTime.now());
|
||||
ReflectionTestUtils.setField(member, "createdAt", LocalDateTime.now());
|
||||
|
||||
return user;
|
||||
return member;
|
||||
}
|
||||
|
||||
public static SolvedQuiz solvedQuiz(final Quiz quiz, final User user) {
|
||||
public static SolvedQuiz solvedQuiz(final Quiz quiz, final Member member) {
|
||||
return SolvedQuiz.builder()
|
||||
.quiz(quiz)
|
||||
.user(user)
|
||||
.member(member)
|
||||
.build();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user