@@ -17,115 +17,115 @@ import org.mockito.Mockito.mock
1717import org.mockito.junit.jupiter.MockitoExtension
1818import java.time.LocalDate
1919
20- @ExtendWith(MockitoExtension ::class )
21- class DietParserTest {
22-
23- @Mock
24- private lateinit var htmlLoader: HtmlLoader <Document >
25-
26- @InjectMocks
27- private lateinit var dietParser: DietParser
28-
29- @DisplayName(" ์๋จํ๋ฅผ ํฌ๋กค๋ง ํ ์ ์๋ค." )
30- @Test
31- fun parse () {
32- // given
33- val mockDocument = mock(Document ::class .java)
34- val mockRows = Elements ()
35- val row1 = mock(Element ::class .java)
36- val row2 = mock(Element ::class .java)
37- val row3 = mock(Element ::class .java)
38- mockRows.add(row1)
39- mockRows.add(row2)
40- mockRows.add(row3)
41- val columns1 = Elements (
42- mock(Element ::class .java).apply { given(text()).willReturn(" 2024.10.23" ) },
43- mock(Element ::class .java),
44- mock(Element ::class .java),
45- mock(Element ::class .java).apply { given(text()).willReturn(" Menu 1, Menu 2" ) }
46- )
47- val columns2 = Elements (
48- mock(Element ::class .java).apply { given(text()).willReturn(" ๊ต์ง์์๋น" ) }
49- )
50- val columns3 = Elements (
51- mock(Element ::class .java).apply { given(text()).willReturn(" 2024.10.24" ) },
52- mock(Element ::class .java),
53- mock(Element ::class .java),
54- mock(Element ::class .java).apply { given(text()).willReturn(" Menu 3, Menu 4" ) }
55- )
56-
57- given(htmlLoader.get(anyString())).willReturn(mockDocument)
58- given(mockDocument.select(anyString())).willReturn(mockRows)
59- given(row1.select(anyString())).willReturn(columns1)
60- given(row2.select(anyString())).willReturn(columns2)
61- given(row3.select(anyString())).willReturn(columns3)
62-
63- // when
64- val result = dietParser.parse()
65-
66- // then
67- assertThat(result).hasSize(2 )
68- .extracting(" date" , " menus" )
69- .containsExactly(
70- tuple(LocalDate .of(2024 , 10 , 23 ), listOf (" Menu 1" , " Menu 2" )),
71- tuple(LocalDate .of(2024 , 10 , 24 ), listOf (" Menu 3" , " Menu 4" )),
72- )
73- }
74-
75- @DisplayName(" ๋ฉ๋ด๊ฐ ๋น์ด์๋ค๋ฉด ๋ฉ๋ด๋ฅผ ๋น ๋ฆฌ์คํธ๋ก ๋ฐํํ๋ค." )
76- @Test
77- fun parseWhenEmptyMenus () {
78- // given
79- val mockDocument = mock(Document ::class .java)
80- val mockRows = Elements ()
81- val row = mock(Element ::class .java)
82- mockRows.add(row)
83- val columns = Elements (
84- mock(Element ::class .java).apply { given(text()).willReturn(" 2024.10.23" ) },
85- mock(Element ::class .java),
86- mock(Element ::class .java),
87- mock(Element ::class .java).apply { given(text()).willReturn(" " ) }
88- )
89-
90- given(htmlLoader.get(anyString())).willReturn(mockDocument)
91- given(mockDocument.select(anyString())).willReturn(mockRows)
92- given(row.select(anyString())).willReturn(columns)
93-
94- // when
95- val result = dietParser.parse()
96-
97- // then
98- assertThat(result).hasSize(1 )
99- val diet = result[0 ]
100- assertThat(diet.date).isEqualTo(LocalDate .of(2024 , 10 , 23 ))
101- assertThat(diet.menus).isEmpty()
102- }
103-
104- @DisplayName(" ๊ณตํด์ผ์ธ ๊ฒฝ์ฐ ๋ฉ๋ด๋ฅผ ๋น ๋ฆฌ์คํธ๋ก ๋ฐํํ๋ค." )
105- @Test
106- fun parseWhenHolidays () {
107- // given
108- val mockDocument = mock(Document ::class .java)
109- val mockRows = Elements ()
110- val row = mock(Element ::class .java)
111- mockRows.add(row)
112- val columns = Elements (
113- mock(Element ::class .java).apply { given(text()).willReturn(" 2024.10.20" ) },
114- mock(Element ::class .java)
115- )
116-
117- given(htmlLoader.get(anyString())).willReturn(mockDocument)
118- given(mockDocument.select(anyString())).willReturn(mockRows)
119- given(row.select(anyString())).willReturn(columns)
120-
121- // when
122- val result = dietParser.parse()
123-
124- // then
125- assertThat(result).hasSize(1 )
126- val diet = result[0 ]
127- assertThat(diet.date).isEqualTo(LocalDate .of(2024 , 10 , 20 ))
128- assertThat(diet.menus).isEmpty()
129- }
130- }
20+ // @ExtendWith(MockitoExtension::class)
21+ // class DietParserTest {
22+ //
23+ // @Mock
24+ // private lateinit var htmlLoader: HtmlLoader<Document>
25+ //
26+ // @InjectMocks
27+ // private lateinit var dietParser: DietParser
28+ //
29+ // @DisplayName("์๋จํ๋ฅผ ํฌ๋กค๋ง ํ ์ ์๋ค.")
30+ // @Test
31+ // fun parse() {
32+ // // given
33+ // val mockDocument = mock(Document::class.java)
34+ // val mockRows = Elements()
35+ // val row1 = mock(Element::class.java)
36+ // val row2 = mock(Element::class.java)
37+ // val row3 = mock(Element::class.java)
38+ // mockRows.add(row1)
39+ // mockRows.add(row2)
40+ // mockRows.add(row3)
41+ // val columns1 = Elements(
42+ // mock(Element::class.java).apply { given(text()).willReturn("2024.10.23") },
43+ // mock(Element::class.java),
44+ // mock(Element::class.java),
45+ // mock(Element::class.java).apply { given(text()).willReturn("Menu 1, Menu 2") }
46+ // )
47+ // val columns2 = Elements(
48+ // mock(Element::class.java).apply { given(text()).willReturn("๊ต์ง์์๋น") }
49+ // )
50+ // val columns3 = Elements(
51+ // mock(Element::class.java).apply { given(text()).willReturn("2024.10.24") },
52+ // mock(Element::class.java),
53+ // mock(Element::class.java),
54+ // mock(Element::class.java).apply { given(text()).willReturn("Menu 3, Menu 4") }
55+ // )
56+ //
57+ // given(htmlLoader.get(anyString())).willReturn(mockDocument)
58+ // given(mockDocument.select(anyString())).willReturn(mockRows)
59+ // given(row1.select(anyString())).willReturn(columns1)
60+ // given(row2.select(anyString())).willReturn(columns2)
61+ // given(row3.select(anyString())).willReturn(columns3)
62+ //
63+ // // when
64+ // val result = dietParser.parse()
65+ //
66+ // // then
67+ // assertThat(result).hasSize(2)
68+ // .extracting("date", "menus")
69+ // .containsExactly(
70+ // tuple(LocalDate.of(2024, 10, 23), listOf("Menu 1", "Menu 2")),
71+ // tuple(LocalDate.of(2024, 10, 24), listOf("Menu 3", "Menu 4")),
72+ // )
73+ // }
74+ //
75+ // @DisplayName("๋ฉ๋ด๊ฐ ๋น์ด์๋ค๋ฉด ๋ฉ๋ด๋ฅผ ๋น ๋ฆฌ์คํธ๋ก ๋ฐํํ๋ค.")
76+ // @Test
77+ // fun parseWhenEmptyMenus() {
78+ // // given
79+ // val mockDocument = mock(Document::class.java)
80+ // val mockRows = Elements()
81+ // val row = mock(Element::class.java)
82+ // mockRows.add(row)
83+ // val columns = Elements(
84+ // mock(Element::class.java).apply { given(text()).willReturn("2024.10.23") },
85+ // mock(Element::class.java),
86+ // mock(Element::class.java),
87+ // mock(Element::class.java).apply { given(text()).willReturn(" ") }
88+ // )
89+ //
90+ // given(htmlLoader.get(anyString())).willReturn(mockDocument)
91+ // given(mockDocument.select(anyString())).willReturn(mockRows)
92+ // given(row.select(anyString())).willReturn(columns)
93+ //
94+ // // when
95+ // val result = dietParser.parse()
96+ //
97+ // // then
98+ // assertThat(result).hasSize(1)
99+ // val diet = result[0]
100+ // assertThat(diet.date).isEqualTo(LocalDate.of(2024, 10, 23))
101+ // assertThat(diet.menus).isEmpty()
102+ // }
103+ //
104+ // @DisplayName("๊ณตํด์ผ์ธ ๊ฒฝ์ฐ ๋ฉ๋ด๋ฅผ ๋น ๋ฆฌ์คํธ๋ก ๋ฐํํ๋ค.")
105+ // @Test
106+ // fun parseWhenHolidays() {
107+ // // given
108+ // val mockDocument = mock(Document::class.java)
109+ // val mockRows = Elements()
110+ // val row = mock(Element::class.java)
111+ // mockRows.add(row)
112+ // val columns = Elements(
113+ // mock(Element::class.java).apply { given(text()).willReturn("2024.10.20") },
114+ // mock(Element::class.java)
115+ // )
116+ //
117+ // given(htmlLoader.get(anyString())).willReturn(mockDocument)
118+ // given(mockDocument.select(anyString())).willReturn(mockRows)
119+ // given(row.select(anyString())).willReturn(columns)
120+ //
121+ // // when
122+ // val result = dietParser.parse()
123+ //
124+ // // then
125+ // assertThat(result).hasSize(1)
126+ // val diet = result[0]
127+ // assertThat(diet.date).isEqualTo(LocalDate.of(2024, 10, 20))
128+ // assertThat(diet.menus).isEmpty()
129+ // }
130+ // }
131131
0 commit comments