Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

πŸš€ 3단계 - ν…ŒμŠ€νŠΈλ₯Ό ν†΅ν•œ μ½”λ“œ 보호 #847

Merged
merged 87 commits into from
Feb 13, 2025
Merged
Show file tree
Hide file tree
Changes from 76 commits
Commits
Show all changes
87 commits
Select commit Hold shift + click to select a range
224e080
docs(README): μ£Όλ¬Έ 상세 ν•­λͺ©μ˜ 메뉴 μˆ˜λŸ‰μ— λŒ€ν•œ 쑰건을 더 λͺ…ν™•νžˆ λ³€κ²½
AlbertImKr Feb 7, 2025
eecede8
test: μƒν’ˆμ„ 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 7, 2025
9067917
test: μƒν’ˆμ˜ 가격 λ³€κ²½ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 7, 2025
d57dc9d
test: μƒν’ˆ λͺ©λ‘μ„ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
b3c381e
test: ν•„μš” μ—†λŠ” ν…ŒμŠ€νŠΈ μ‚­μ œ
AlbertImKr Feb 8, 2025
5341c03
test: μƒν’ˆ 아이디 λͺ©λ‘μœΌλ‘œ μƒν’ˆ λͺ©λ‘μ„ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
44cdc35
test(application): 메뉴 그룹을 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
7e0900c
test(ui): 메뉴 그룹을 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
7d67191
test(ui): μƒν’ˆ ν…ŒμŠ€νŠΈ λ¦¬νŽ™ν† λ§
AlbertImKr Feb 8, 2025
8ac0a16
test(application): 메뉴 κ·Έλ£Ή λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
7b35243
docs(README): μš”κ΅¬μ‚¬ν•­ μˆ˜μ •
AlbertImKr Feb 8, 2025
c155672
test(ui): 메뉴 κ·Έλ£Ή λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
d18bd15
test(application): μƒˆλ‘œμš΄ 메뉴λ₯Ό 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
4cfa3c7
test(application): νŠΉμ • λ©”λ‰΄μ˜ 가격 λ³€κ²½ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
8c4861c
test(ui): νŠΉμ • λ©”λ‰΄μ˜ 가격 λ³€κ²½ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
5d3fc76
test(application): 메뉴 μˆ¨κΉ€ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
51afbee
test(application): 메뉴 ν™œμ„±ν™” ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
6ec2624
test(ui): 메뉴 ν…ŒμŠ€νŠΈ κ΅¬ν˜„ 및 정리
AlbertImKr Feb 8, 2025
2b7e686
test(ui): μƒν’ˆ ν…ŒμŠ€νŠΈ 정리
AlbertImKr Feb 8, 2025
242f53d
test(ui): 메뉴 κ·Έλ£Ή ν…ŒμŠ€νŠΈ 정리
AlbertImKr Feb 8, 2025
f6bfb25
test(application): 메뉴 κ·Έλ£Ή ν…ŒμŠ€νŠΈ 정리
AlbertImKr Feb 8, 2025
05fbd35
test(application): μƒν’ˆ ν…ŒμŠ€νŠΈ 정리
AlbertImKr Feb 8, 2025
62b05c8
test(ui): ν…ŒμŠ€νŠΈ 이름 λ³€κ²½
AlbertImKr Feb 8, 2025
b3f3402
test(ui): ν…ŒμŠ€νŠΈ 이름 λ³€κ²½
AlbertImKr Feb 8, 2025
9f5d90c
test(application): ν…ŒμŠ€νŠΈ 이름 λ³€κ²½
AlbertImKr Feb 8, 2025
d8b871f
docs(README): μš”κ΅¬μ‚¬ν•­ μˆ˜μ •
AlbertImKr Feb 8, 2025
a031142
test(ui): 메뉴 ν™œμ„±ν™” ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
df5b382
docs(README): μš”κ΅¬μ‚¬ν•­ μˆ˜μ •
AlbertImKr Feb 8, 2025
0b1fef4
test: ν…ŒμŠ€νŠΈ μΌ€μ΄μŠ€ 이름 가독성 ν–₯상
AlbertImKr Feb 8, 2025
13b506c
docs(README): μš”κ΅¬μ‚¬ν•­ μˆ˜μ •
AlbertImKr Feb 8, 2025
28f7ce1
test(application): 메뉴 λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
f001c00
test(ui): 메뉴 λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
115e5a9
test(application): μ£Όλ¬Έ ν…Œμ΄λΈ” 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
7404382
test(ui): μ£Όλ¬Έ ν…Œμ΄λΈ” 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
83a5cf0
test(application): μ£Όλ¬Έ ν…Œμ΄λΈ” μ‚¬μš© ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
5460fb8
test(application): ν…ŒμŠ€νŠΈ 톡일
AlbertImKr Feb 8, 2025
3625d21
test(ui): μ£Όλ¬Έ ν…Œμ΄λΈ” μ‚¬μš© ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
06708ab
test(application): μ£Όλ¬Έ ν…Œμ΄λΈ” λΉ„μš°κΈ° ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
cf9f452
test(ui): μ£Όλ¬Έ ν…Œμ΄λΈ” λΉ„μš°κΈ° ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
cec57cd
docs(README): μš”κ΅¬μ‚¬ν•­ λ³€κ²½
AlbertImKr Feb 8, 2025
6c7bec0
test(application): μ£Όλ¬Έ ν…Œμ΄λΈ” 인원 λ³€κ²½ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
add5a3a
test(ui): μ£Όλ¬Έ ν…Œμ΄λΈ” 인원 λ³€κ²½ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
4708527
docs(README): μš”κ΅¬μ‚¬ν•­ λ³€κ²½
AlbertImKr Feb 8, 2025
ec5a834
test(application): μ£Όλ¬Έ ν…Œμ΄λΈ” λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
ffab8c6
test(ui): μ£Όλ¬Έ ν…Œμ΄λΈ” λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
e496332
test(domain): 메뉴 아이디 λͺ©λ‘μœΌλ‘œ 메뉴 λͺ©λ‘μ„ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
880755f
test(domain): μƒν’ˆ μ•„μ΄λ””λ‘œ 메뉴 λͺ©λ‘μ„ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
42c3ac6
docs(README): μš”κ΅¬μ‚¬ν•­ λ³€κ²½
AlbertImKr Feb 8, 2025
80e4455
docs(README): μš”κ΅¬μ‚¬ν•­ λ³€κ²½
AlbertImKr Feb 8, 2025
b1f9220
test(application): 배달 μ£Όλ¬Έ 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
71ba20e
test(application): 배달 μ£Όλ¬Έ μ ‘μˆ˜ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
6b3bc9d
test(application): 배달 μ£Όλ¬Έ μ„œλΉ™ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
51cc723
test(application): 배달 μ£Όλ¬Έ 배달 μ‹œμž‘ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
1c97301
test(application): 배달 μ£Όλ¬Έ 배달 μ™„λ£Œ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
05e08ff
test(application): 배달 μ£Όλ¬Έ μ™„λ£Œ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
addb2e1
test(application): 포μž₯ μ£Όλ¬Έ 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
ee45639
test(application): 포μž₯ μ£Όλ¬Έ μ ‘μˆ˜ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
20698a4
test(application): 포μž₯ μ£Όλ¬Έ μ„œλΉ™ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
e6c1576
test(application): 포μž₯ μ£Όλ¬Έ μ„œλΉ™ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
f0bd21c
test(application): 포μž₯ μ£Όλ¬Έ μ™„λ£Œ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
7eb4b2a
test(application): μ£Όλ¬Έ νƒ€μž… 지정
AlbertImKr Feb 8, 2025
45abab4
test(application): 맀μž₯ λ‚΄ 식사 μ£Όλ¬Έ 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
8bcd0c0
test(application): 맀μž₯ λ‚΄ 식사 μ£Όλ¬Έ μ ‘μˆ˜ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
4272b77
test(application): 맀μž₯ λ‚΄ 식사 μ£Όλ¬Έ μ„œλΉ™ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
82585f9
test(application): 맀μž₯ λ‚΄ 식사 μ£Όλ¬Έ μ™„λ£Œ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
002a185
test(application): fixture 뢄리
AlbertImKr Feb 8, 2025
1d598b4
test(ui): μ£Όλ¬Έ 생성 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
a502a86
test(ui): μ£Όλ¬Έ μ ‘μˆ˜ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
8582230
test(ui): μ£Όλ¬Έ μ„œλΉ™ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
8b6b702
test(ui): μ£Όλ¬Έ 배달 μ‹œμž‘ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
e1f5587
test(ui): μ£Όλ¬Έ 배달 μ™„λ£Œ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
5c77580
test(ui): μ£Όλ¬Έ μ™„λ£Œ ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
9fd59d5
docs(README): μš”κ΅¬μ‚¬ν•­ μˆ˜μ •
AlbertImKr Feb 8, 2025
440bebd
test(application): μ£Όλ¬Έ λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
57bc7a5
test(ui): μ£Όλ¬Έ λͺ©λ‘ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
07cbb3b
test(domain): μ£Όλ¬Έ ν…Œμ΄λΈ”κ³Ό νŠΉμ • μƒνƒœκ°€ μ•„λ‹Œ μ£Όλ¬Έ 쑴재 μ—¬λΆ€ 쑰회 ν…ŒμŠ€νŠΈ κ΅¬ν˜„
AlbertImKr Feb 8, 2025
0d7bd95
test: μ˜€νƒ€ μˆ˜μ •
AlbertImKr Feb 10, 2025
c29bd27
test: μ„€λͺ… 였λ₯˜ μˆ˜μ •
AlbertImKr Feb 10, 2025
84f6316
test: MenuBuilder둜 Menu 생성
AlbertImKr Feb 10, 2025
8a6ec96
test: OrderLineItemBuilder둜 OrderLineItem 생성
AlbertImKr Feb 10, 2025
1bc8ab3
test: OrderBuilder둜 Order 생성
AlbertImKr Feb 10, 2025
ebb4755
test: MenuGroupBuilder둜 MenuGroup 생성
AlbertImKr Feb 10, 2025
6cb967e
test: MenuServiceTest λΉŒλ“œ νŒ¨ν„΄μœΌλ‘œ 객체 생성
AlbertImKr Feb 10, 2025
45d3e33
test: OrderServiceTest λ¦¬νŒ©ν† λ§
AlbertImKr Feb 10, 2025
f9c563a
test: OrderTableServiceTest λ¦¬νŒ©ν† λ§
AlbertImKr Feb 10, 2025
5c7410b
test: ProductServiceTest λ¦¬νŒ©ν† λ§
AlbertImKr Feb 10, 2025
f9268cc
docs: μš”κ΅¬μ‚¬ν•­ 정리
AlbertImKr Feb 11, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
99 changes: 50 additions & 49 deletions README.md

Large diffs are not rendered by default.

11 changes: 0 additions & 11 deletions src/test/java/kitchenpos/ApplicationTest.java

This file was deleted.

86 changes: 86 additions & 0 deletions src/test/java/kitchenpos/application/MenuGroupServiceTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
package kitchenpos.application;

import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import static org.mockito.ArgumentMatchers.any;
import static org.mockito.BDDMockito.given;

import java.util.List;
import kitchenpos.domain.MenuGroup;
import kitchenpos.domain.MenuGroupRepository;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Nested;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.junit.jupiter.params.ParameterizedTest;
import org.junit.jupiter.params.provider.NullAndEmptySource;
import org.junit.jupiter.params.provider.ValueSource;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;

@ExtendWith(MockitoExtension.class)
class MenuGroupServiceTest {

@InjectMocks
private MenuGroupService menuGroupService;

@Mock
private MenuGroupRepository menuGroupRepository;

@DisplayName("메뉴 κ·Έλ£Ή λͺ©λ‘ 쑰회")
@Nested
class FindAllMenuGroups {

@DisplayName("메뉴 κ·Έλ£Ή λͺ©λ‘ 쑰회 μ„±κ³΅ν•˜λ©΄ 메뉴 κ·Έλ£Ή λͺ©λ‘μ„ λ°˜ν™˜ν•œλ‹€.")
@Test
void if_success_then_return_menu_groups() {
// given
given(menuGroupRepository.findAll())
.willReturn(List.of(new MenuGroup(), new MenuGroup()));

// when
var menuGroups = menuGroupService.findAll();

// then
assertThat(menuGroups).hasSize(2);
}
}

@DisplayName("메뉴 κ·Έλ£Ή 생성")
@Nested
class MenuGroupCreate {

@DisplayName("메뉴 κ·Έλ£Ή 이름이 nullμ΄κ±°λ‚˜ 빈 λ¬Έμžμ—΄μΈ 경우 μ˜ˆμ™Έλ₯Ό λ˜μ§„λ‹€.")
@ParameterizedTest
@NullAndEmptySource
void if_name_is_null_or_empty_then_throw_exception(String name) {
// given
var request = new MenuGroup();
request.setName(name);
AlbertImKr marked this conversation as resolved.
Show resolved Hide resolved

// when
assertThatThrownBy(() -> menuGroupService.create(request))
// then
.isInstanceOf(IllegalArgumentException.class);
}

@DisplayName("메뉴 κ·Έλ£Ή 생성 μ„±κ³΅ν•˜λ©΄ 메뉴 그룹을 λ°˜ν™˜ν•œλ‹€.")
@ParameterizedTest
@ValueSource(strings = {"μΉ˜ν‚¨", "μ‚¬μ΄λ“œ 메뉴", "음료"})
void if_success_then_return_menu_group(String name) {
// given
var request = new MenuGroup();
request.setName(name);
given(menuGroupRepository.save(any(MenuGroup.class)))
.will(invocation -> invocation.getArgument(0));

// when
var menuGroup = menuGroupService.create(request);

// then
assertThat(menuGroup).isNotNull();
assertThat(menuGroup.getName()).isEqualTo(name);
}
}
}
Loading