Add SolvedQuizDtoConverter
This commit is contained in:
@@ -0,0 +1,18 @@
|
|||||||
|
package com.mangkyu.employment.interview.app.solvedquiz.converter;
|
||||||
|
|
||||||
|
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 lombok.AccessLevel;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
||||||
|
public final class SolvedQuizDtoConverter {
|
||||||
|
|
||||||
|
public static SolvedQuiz convert(final Member member, final Quiz quiz) {
|
||||||
|
return SolvedQuiz.builder()
|
||||||
|
.member(member)
|
||||||
|
.quiz(quiz).build();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -2,6 +2,7 @@ package com.mangkyu.employment.interview.app.solvedquiz.service;
|
|||||||
|
|
||||||
import com.mangkyu.employment.interview.app.member.entity.Member;
|
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.entity.Quiz;
|
||||||
|
import com.mangkyu.employment.interview.app.solvedquiz.converter.SolvedQuizDtoConverter;
|
||||||
import com.mangkyu.employment.interview.app.solvedquiz.entity.SolvedQuiz;
|
import com.mangkyu.employment.interview.app.solvedquiz.entity.SolvedQuiz;
|
||||||
import com.mangkyu.employment.interview.app.solvedquiz.repository.SolvedQuizRepository;
|
import com.mangkyu.employment.interview.app.solvedquiz.repository.SolvedQuizRepository;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
@@ -22,16 +23,10 @@ public class SolvedQuizService {
|
|||||||
@Transactional
|
@Transactional
|
||||||
public void addSolvedQuizList(final Member member, final List<Quiz> quizList) {
|
public void addSolvedQuizList(final Member member, final List<Quiz> quizList) {
|
||||||
final List<SolvedQuiz> solvedQuizList = quizList.stream()
|
final List<SolvedQuiz> solvedQuizList = quizList.stream()
|
||||||
.map(quiz -> createSolvedQuizEntity(member, quiz))
|
.map(quiz -> SolvedQuizDtoConverter.convert(member, quiz))
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
|
|
||||||
solvedQuizRepository.saveAll(solvedQuizList);
|
solvedQuizRepository.saveAll(solvedQuizList);
|
||||||
}
|
}
|
||||||
|
|
||||||
private SolvedQuiz createSolvedQuizEntity(final Member member, final Quiz quiz) {
|
|
||||||
return SolvedQuiz.builder()
|
|
||||||
.member(member)
|
|
||||||
.quiz(quiz).build();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
package com.mangkyu.employment.interview.app.solvedquiz.converter;
|
||||||
|
|
||||||
|
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.testutils.EntityCreationUtils;
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
|
class SolvedQuizDtoConverterTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void convertMemberAndQuizToSolvedQuizEntity() {
|
||||||
|
// given
|
||||||
|
final Member member = EntityCreationUtils.member();
|
||||||
|
final Quiz quiz = EntityCreationUtils.quiz();
|
||||||
|
|
||||||
|
// when
|
||||||
|
final SolvedQuiz result = SolvedQuizDtoConverter.convert(member, quiz);
|
||||||
|
|
||||||
|
// then
|
||||||
|
assertThat(result.getMember()).isEqualTo(member);
|
||||||
|
assertThat(result.getQuiz()).isEqualTo(quiz);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user