POST /api/join?_csrf=QsE6JKQlHZIiU8HPOYZmNGwJHQc0clQ0ae2hjrzFgOfI3TyXI_kMEJ0QJaQPZKf3CqtSDQhqMD8GQ2QZDN_E7YijtYWs7Vin HTTP/1.1
+POST /api/join?_csrf=uqGwVr5ZRkFGB1PDZT5OiMVU0jpDbCBYYDbvR2T-R8Q_DWeS3JmIbtg6d3BrYmXxAxN6vKFt_wN3CUN1VgDbJAbJJaVdbgKg HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 75
Host: localhost:8080
@@ -606,7 +606,7 @@ 요청
HTTP request
-POST /api/join?_csrf=U9yI2-54Q6c8Ts98IiUY_jcQcR3l1qwoaYbxhgHhgYRQRACrMOWw7tcaIJQRLKoZEggsmlYkXCSD580FXLbIv2DZ57ZnfTXP HTTP/1.1
+POST /api/join?_csrf=nHAt8mXu5LrBXuVeaBu2HIYegvQHhqbJ9_PMyGVbGoI4V6oh-kcfkVOM1Ivsad09WjaCL-V_r81iv5LkxcqvqwM5LudeYMgR HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 75
Host: localhost:8080
@@ -722,17 +722,19 @@ 요청
HTTP request
-POST /api/member?_csrf=ypKKXvLvUxriu6QobHxkW-WEvnAQ-pgBTh3lFWvpcmPXMYbB8_O_OpffMSvPiJNOVVFQYoCzk0l0zPwsK3zQd17eFFXmBuT5 HTTP/1.1
+POST /api/member?_csrf=P36JFwmul7Teu6P8UCzcJ0IGpZJZa_KevzzOcfMTJZpZhciWW0ixLzmY9oHzisfFZgHoF3dkiPA4WMezjAqoE8QmE686tKmg HTTP/1.1
Content-Type: application/json;charset=UTF-8
-Content-Length: 120
+Content-Length: 246
Host: localhost:8080
{
"username" : "testId",
"age" : 70,
- "experience" : "TEST",
- "physicalStatus" : "TEST",
- "preference" : "TEST"
+ "mainExperience" : "OFFICE_ACCOUNTING_IT",
+ "subExperience" : "ACCOUNTING_FINANCE",
+ "mainPreference" : "OFFICE_ACCOUNTING_IT",
+ "subPreference" : "ACCOUNTING_FINANCE",
+ "physicalStatus" : "NORMAL"
}
@@ -764,19 +766,29 @@ Request fields
나이
-experience
+mainExperience
String
-일 경험
+일 경험 (대분류)
-physicalStatus
+subExperience
String
-건강 상태
+일 경험 (소분류)
+
+
+mainPreference
+String
+선호 직종 (대분류)
-preference
+subPreference
String
-선호 직종
+선호 직종 (소분류)
+
+
+physicalStatus
+String
+건강 상태
@@ -850,17 +862,19 @@ 요청
HTTP request
-POST /api/member?_csrf=YTAh2WzfOOjSLVashUr_Rip1Y_-_oqUiLFtvbygcWRaQOcmJUQESvV7sXY3_TmKVvGfLJBhCTp2IlpIPG2wLChF_O3ClWqqx HTTP/1.1
+POST /api/member?_csrf=pZ25SF_D7mKw0dsGee1kXmL8WR_Yu2nru0qP64U_vwS7vPnDlquILDv0i1Od4bkxH8BQOlGddCa6iAjG2im_ieYKjGffiJv0 HTTP/1.1
Content-Type: application/json;charset=UTF-8
-Content-Length: 120
+Content-Length: 246
Host: localhost:8080
{
"username" : "testId",
"age" : 70,
- "experience" : "TEST",
- "physicalStatus" : "TEST",
- "preference" : "TEST"
+ "mainExperience" : "OFFICE_ACCOUNTING_IT",
+ "subExperience" : "ACCOUNTING_FINANCE",
+ "mainPreference" : "OFFICE_ACCOUNTING_IT",
+ "subPreference" : "ACCOUNTING_FINANCE",
+ "physicalStatus" : "NORMAL"
}
@@ -892,19 +906,29 @@ Request fields
나이
-experience
+mainExperience
String
-일 경험
+일 경험 (대분류)
-physicalStatus
+subExperience
String
-건강 상태
+일 경험 (소분류)
+
+
+mainPreference
+String
+선호 직종 (대분류)
-preference
+subPreference
String
-선호 직종
+선호 직종 (소분류)
+
+
+physicalStatus
+String
+건강 상태
@@ -1485,7 +1509,7 @@ 요청
HTTP request
-PATCH /api/credits/plus?_csrf=p-sx8nx0iFNeVfUDDu9YOv9kAe5_7_Rc2eqMT7vW5sREQQL1lo1QkEQV7GJzN8Y3O8JsXptXLNZIi8Jx7Nq7K4Lg1KFxIDaR HTTP/1.1
+PATCH /api/credits/plus?_csrf=FTufPolFbnQWgcjDW8jT-Zkka5uhtYIsfBvR-8aKTSGi-mnJJQuoCbgjChI7sK6lY-Xnz6oTRvnHgbABSCrnmv--ekKRzFys HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 47
Host: localhost:8080
@@ -1608,7 +1632,7 @@ 요청
HTTP request
-PATCH /api/credits/minus?_csrf=JKkbsJeB-Sz-w-AC7kxVC2Sk-t2H4JN9m31Sli7D3L8hFxgoRpF9gKW3nU_TptExj2FhM12R1-Xi06ZQoklgpB_wvooWI3tK HTTP/1.1
+PATCH /api/credits/minus?_csrf=RIhdRhgUX7s9SaRUFcBJ4rkdcDr5ESnv0ZSbEQORawtiuuyFJ-xrdSAjbd0Qe5E2Ie19gY4qXQOaIBrC5_etJzuoXmhRgoq8 HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 47
Host: localhost:8080
@@ -2005,7 +2029,7 @@ 요청
HTTP request
-POST /api/works-join?_csrf=Yt9bTYD94jclNSw3axkWxVEAKuhXyyf6cHKZ-iBXsJ4HdKyUW-9tfrjK0A8IVB5VXjQipzI1B4pk80XXR0qrnxJkhak0EJjx HTTP/1.1
+POST /api/works-join?_csrf=aLTWfYjPQd7xySlQdXuyQQ-JWy5_zEjlcqFBU1-hVLp8xZ2lUdLmTun_cunc_hBoEFaGcWztdk9N-ivIF5YkZm_EMo9Fof6c HTTP/1.1
Content-Type: application/json;charset=UTF-8
Content-Length: 44
Host: localhost:8080
@@ -2113,7 +2137,7 @@ Response fields
diff --git a/src/test/java/workplate/workplateserver/auth/controller/MemberControllerTest.java b/src/test/java/workplate/workplateserver/auth/controller/MemberControllerTest.java
index c661c11..e46b643 100644
--- a/src/test/java/workplate/workplateserver/auth/controller/MemberControllerTest.java
+++ b/src/test/java/workplate/workplateserver/auth/controller/MemberControllerTest.java
@@ -24,9 +24,9 @@
import com.google.gson.Gson;
-import workplate.workplateserver.auth.domain.Experience;
+import workplate.workplateserver.auth.domain.MainExperience;
import workplate.workplateserver.auth.domain.PhysicalStatus;
-import workplate.workplateserver.auth.domain.Preference;
+import workplate.workplateserver.auth.domain.SubExperience;
import workplate.workplateserver.auth.domain.dto.request.JoinRequest;
import workplate.workplateserver.auth.domain.dto.request.MemberDetailRequest;
import workplate.workplateserver.auth.domain.jwt.JwtTokenProvider;
@@ -141,7 +141,9 @@ void joinFailTest() throws Exception {
@WithMockUser
void addDetailTest() throws Exception {
// Given
- MemberDetailRequest request = new MemberDetailRequest("testId", 70, Experience.TEST, PhysicalStatus.TEST, Preference.TEST);
+ MemberDetailRequest request = new MemberDetailRequest("testId", 70, MainExperience.OFFICE_ACCOUNTING_IT,
+ SubExperience.ACCOUNTING_FINANCE, MainExperience.OFFICE_ACCOUNTING_IT, SubExperience.ACCOUNTING_FINANCE,
+ PhysicalStatus.NORMAL);
// When
mockMvc.perform(post("/api/member")
@@ -163,9 +165,11 @@ void addDetailTest() throws Exception {
requestFields(
fieldWithPath("username").description("가입한 아이디"),
fieldWithPath("age").description("나이"),
- fieldWithPath("experience").description("일 경험"),
- fieldWithPath("physicalStatus").description("건강 상태"),
- fieldWithPath("preference").description("선호 직종")
+ fieldWithPath("mainExperience").description("일 경험 (대분류)"),
+ fieldWithPath("subExperience").description("일 경험 (소분류)"),
+ fieldWithPath("mainPreference").description("선호 직종 (대분류)"),
+ fieldWithPath("subPreference").description("선호 직종 (소분류)"),
+ fieldWithPath("physicalStatus").description("건강 상태")
),
responseFields(
fieldWithPath("success").description("성공여부"),
@@ -181,7 +185,9 @@ void addDetailTest() throws Exception {
@WithMockUser
void addDetailFailTest() throws Exception {
// Given
- MemberDetailRequest request = new MemberDetailRequest("testId", 70, Experience.TEST, PhysicalStatus.TEST, Preference.TEST);
+ MemberDetailRequest request = new MemberDetailRequest("testId", 70, MainExperience.OFFICE_ACCOUNTING_IT,
+ SubExperience.ACCOUNTING_FINANCE, MainExperience.OFFICE_ACCOUNTING_IT, SubExperience.ACCOUNTING_FINANCE,
+ PhysicalStatus.NORMAL);
doThrow(new UsernameNotFoundException("회원정보를 찾을 수 없습니다.")).when(memberService).saveDetails(any());
// When
@@ -204,9 +210,11 @@ void addDetailFailTest() throws Exception {
requestFields(
fieldWithPath("username").description("가입한 아이디"),
fieldWithPath("age").description("나이"),
- fieldWithPath("experience").description("일 경험"),
- fieldWithPath("physicalStatus").description("건강 상태"),
- fieldWithPath("preference").description("선호 직종")
+ fieldWithPath("mainExperience").description("일 경험 (대분류)"),
+ fieldWithPath("subExperience").description("일 경험 (소분류)"),
+ fieldWithPath("mainPreference").description("선호 직종 (대분류)"),
+ fieldWithPath("subPreference").description("선호 직종 (소분류)"),
+ fieldWithPath("physicalStatus").description("건강 상태")
),
responseFields(
fieldWithPath("success").description("성공여부"),
diff --git a/src/test/java/workplate/workplateserver/auth/repository/MemberDetailRepositoryTest.java b/src/test/java/workplate/workplateserver/auth/repository/MemberDetailRepositoryTest.java
index 5bfa986..8767836 100644
--- a/src/test/java/workplate/workplateserver/auth/repository/MemberDetailRepositoryTest.java
+++ b/src/test/java/workplate/workplateserver/auth/repository/MemberDetailRepositoryTest.java
@@ -4,16 +4,16 @@
import java.util.Optional;
-import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest;
import org.springframework.transaction.annotation.Transactional;
-import workplate.workplateserver.auth.domain.Experience;
+import workplate.workplateserver.auth.domain.MainExperience;
import workplate.workplateserver.auth.domain.PhysicalStatus;
-import workplate.workplateserver.auth.domain.Preference;
+import workplate.workplateserver.auth.domain.SubExperience;
+import workplate.workplateserver.auth.domain.dto.request.MemberDetailRequest;
import workplate.workplateserver.auth.domain.entity.Member;
import workplate.workplateserver.auth.domain.entity.MemberDetail;
@@ -37,7 +37,10 @@ class MemberDetailRepositoryTest {
@DisplayName("회원 상세정보 저장 테스트")
void saveTest() {
// Given
- MemberDetail md = MemberDetail.toEntity(member, 10, Experience.TEST, PhysicalStatus.TEST, Preference.TEST);
+ MemberDetailRequest request = new MemberDetailRequest("testId", 70, MainExperience.OFFICE_ACCOUNTING_IT,
+ SubExperience.ACCOUNTING_FINANCE, MainExperience.OFFICE_ACCOUNTING_IT, SubExperience.ACCOUNTING_FINANCE,
+ PhysicalStatus.NORMAL);
+ MemberDetail md = MemberDetail.toEntity(member, request);
memberDetailRepository.save(md);
// When
@@ -46,8 +49,8 @@ void saveTest() {
// Then
assertAll(
() -> assertEquals(md.getAge(), result.getAge()),
- () -> assertEquals(md.getPreference(), result.getPreference()),
- () -> assertEquals(md.getExperience(), result.getExperience()),
+ () -> assertEquals(md.getMainExperience(), result.getMainExperience()),
+ () -> assertEquals(md.getSubExperience(), result.getSubExperience()),
() -> assertEquals(md.getPhysicalStatus(), result.getPhysicalStatus())
);
}
@@ -56,13 +59,17 @@ void saveTest() {
@DisplayName("회원 상세정보 삭제 테스트")
void deleteTest() {
// Given
- MemberDetail md = MemberDetail.toEntity(member, 10, Experience.TEST, PhysicalStatus.TEST, Preference.TEST);
+ MemberDetailRequest request = new MemberDetailRequest("testId", 70, MainExperience.OFFICE_ACCOUNTING_IT,
+ SubExperience.ACCOUNTING_FINANCE, MainExperience.OFFICE_ACCOUNTING_IT, SubExperience.ACCOUNTING_FINANCE,
+ PhysicalStatus.NORMAL);
+ MemberDetail md = MemberDetail.toEntity(member, request);
memberDetailRepository.save(md);
// When
memberDetailRepository.deleteById(md.getId());
// Then
- assertEquals(Optional.empty(), memberDetailRepository.findById(md.getId()));;
+ assertEquals(Optional.empty(), memberDetailRepository.findById(md.getId()));
+ ;
}
}
diff --git a/src/test/java/workplate/workplateserver/auth/service/MemberServiceTest.java b/src/test/java/workplate/workplateserver/auth/service/MemberServiceTest.java
index 0854146..59688c7 100644
--- a/src/test/java/workplate/workplateserver/auth/service/MemberServiceTest.java
+++ b/src/test/java/workplate/workplateserver/auth/service/MemberServiceTest.java
@@ -3,8 +3,6 @@
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.BDDMockito.*;
-import java.util.Optional;
-
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
@@ -14,9 +12,9 @@
import org.springframework.security.access.AccessDeniedException;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
-import workplate.workplateserver.auth.domain.Experience;
+import workplate.workplateserver.auth.domain.MainExperience;
import workplate.workplateserver.auth.domain.PhysicalStatus;
-import workplate.workplateserver.auth.domain.Preference;
+import workplate.workplateserver.auth.domain.SubExperience;
import workplate.workplateserver.auth.domain.dto.request.JoinRequest;
import workplate.workplateserver.auth.domain.dto.request.MemberDetailRequest;
import workplate.workplateserver.auth.domain.entity.Member;
@@ -81,7 +79,9 @@ void saveMemberFailTest() {
@DisplayName("회원 상세정보 저장 테스트")
void saveDetailsTest() {
// Given
- MemberDetailRequest memberDetailRequest = new MemberDetailRequest("testId", 10, Experience.TEST, PhysicalStatus.TEST, Preference.TEST);
+ MemberDetailRequest memberDetailRequest = new MemberDetailRequest("testId", 70, MainExperience.OFFICE_ACCOUNTING_IT,
+ SubExperience.ACCOUNTING_FINANCE, MainExperience.OFFICE_ACCOUNTING_IT, SubExperience.ACCOUNTING_FINANCE,
+ PhysicalStatus.NORMAL);
Member m = Member.toEntity("testId", "name", "pw");
given(commonService.findByUsername("testId", true)).willReturn(m);
@@ -97,7 +97,9 @@ void saveDetailsTest() {
@DisplayName("회원 상세정보 저장 실패 테스트")
void saveDetailsFailTest() {
// Given
- MemberDetailRequest memberDetailRequest = new MemberDetailRequest("testId", 10, Experience.TEST, PhysicalStatus.TEST, Preference.TEST);
+ MemberDetailRequest memberDetailRequest = new MemberDetailRequest("testId", 70, MainExperience.OFFICE_ACCOUNTING_IT,
+ SubExperience.ACCOUNTING_FINANCE, MainExperience.OFFICE_ACCOUNTING_IT, SubExperience.ACCOUNTING_FINANCE,
+ PhysicalStatus.NORMAL);
Member m = Member.toEntity("testId", "name", "pw");
given(commonService.findByUsername("testId", true)).willThrow(AccessDeniedException.class);