1
1
package wooteco .prolog .roadmap .repository ;
2
2
3
+ import static org .assertj .core .api .Assertions .assertThat ;
4
+
3
5
import java .util .Arrays ;
4
6
import java .util .List ;
5
7
import org .assertj .core .api .Assertions ;
6
8
import org .junit .jupiter .api .BeforeEach ;
7
9
import org .junit .jupiter .api .DisplayName ;
8
10
import org .junit .jupiter .api .Test ;
9
11
import org .springframework .beans .factory .annotation .Autowired ;
12
+ import wooteco .prolog .roadmap .application .dto .CurriculumQuizResponse ;
13
+ import wooteco .prolog .roadmap .domain .Curriculum ;
10
14
import wooteco .prolog .roadmap .domain .Keyword ;
11
15
import wooteco .prolog .roadmap .domain .Quiz ;
16
+ import wooteco .prolog .roadmap .domain .repository .CurriculumRepository ;
12
17
import wooteco .prolog .roadmap .domain .repository .KeywordRepository ;
13
18
import wooteco .prolog .roadmap .domain .repository .QuizRepository ;
14
19
import wooteco .prolog .session .domain .Session ;
@@ -24,9 +29,14 @@ class QuizRepositoryTest {
24
29
@ Autowired
25
30
private KeywordRepository keywordRepository ;
26
31
32
+ @ Autowired
33
+ private CurriculumRepository curriculumRepository ;
34
+
27
35
@ Autowired
28
36
private SessionRepository sessionRepository ;
29
37
38
+ private Curriculum 백엔드 ;
39
+
30
40
private Session session_백엔드_레벨1 ;
31
41
32
42
private Keyword 자바 ;
@@ -38,15 +48,15 @@ class QuizRepositoryTest {
38
48
39
49
@ BeforeEach
40
50
void setUp () {
41
- session_백엔드_레벨1 = sessionRepository .save (new Session ("백엔드Java 레벨1" ));
51
+ 백엔드 = curriculumRepository .save (new Curriculum ("백엔드" ));
52
+
53
+ session_백엔드_레벨1 = sessionRepository .save (new Session (백엔드 .getId (), "백엔드Java 레벨1" ));
42
54
43
55
자바 = keywordRepository .save (
44
56
new Keyword (null , "자바" , "자바입니다" , 1 , 1 , session_백엔드_레벨1 .getId (), null , null ));
45
- session_백엔드_레벨1 = sessionRepository .save (new Session ("백엔드Java 레벨1" ));
46
57
47
58
깃 = keywordRepository .save (
48
59
new Keyword (null , "깃" , "깃입니다" , 2 , 2 , session_백엔드_레벨1 .getId (), null , null ));
49
- session_백엔드_레벨1 = sessionRepository .save (new Session ("백엔드Java 레벨1" ));
50
60
51
61
자바_질문1 = quizRepository .save (new Quiz (자바 , "자바의 아버지는 제임스 고슬링일까요 ? 제이슨일까요 ?" ));
52
62
자바_질문2 = quizRepository .save (new Quiz (자바 , "Stream 은 자바 몇 버전부터 지원했을까요?" ));
@@ -61,6 +71,19 @@ void findQuizzesByKeyword() {
61
71
final List <Quiz > expect = Arrays .asList (자바_질문1 , 자바_질문2 );
62
72
final List <Quiz > actual = quizRepository .findFetchQuizByKeywordId (자바 .getId ());
63
73
64
- Assertions .assertThat (actual ).containsExactlyElementsOf (expect );
74
+ assertThat (actual ).containsExactlyElementsOf (expect );
75
+ }
76
+
77
+ @ DisplayName ("커리큘럼 id 로 퀴즈 List 를 조회한다." )
78
+ @ Test
79
+ void findQuizzesByCurriculum () {
80
+ // given
81
+ Long 백엔드_커리큘럼_Id = 백엔드 .getId ();
82
+
83
+ // when
84
+ List <CurriculumQuizResponse > acutal = quizRepository .findQuizzesByCurriculum (백엔드_커리큘럼_Id );
85
+
86
+ // then
87
+ assertThat (acutal ).hasSize (3 );
65
88
}
66
89
}
0 commit comments