Skip to content

Commit

Permalink
Merge pull request #109 from Gongjakso/fix/member
Browse files Browse the repository at this point in the history
fix: 사용자 전화번호 칼럼 추가
  • Loading branch information
dl-00-e8 authored Apr 21, 2024
2 parents f4cb0c1 + 21b5dd7 commit 5f79f2c
Show file tree
Hide file tree
Showing 8 changed files with 110 additions and 2 deletions.
5 changes: 5 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,11 @@ configurations {
compileOnly {
extendsFrom annotationProcessor
}

}

configurations.configureEach {
exclude group: 'commons-logging', module: 'commons-logging'
}

repositories {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ public record LoginRes(
@NotNull Long memberId,
@NotNull String email,
@NotNull String name,
String phone,
String profileUrl,
MemberType memberType,
LoginType loginType,
Expand All @@ -28,6 +29,7 @@ public static LoginRes of(Member member, TokenDto tokenDto) {
.memberId(member.getMemberId())
.email(member.getEmail())
.name(member.getName())
.phone(member.getPhone())
.profileUrl(member.getProfileUrl())
.memberType(member.getMemberType())
.loginType(member.getLoginType())
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
package com.gongjakso.server.domain.member.dto;

import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Pattern;
import lombok.Builder;

@Builder
public record MemberReq(@NotNull String name,
@Pattern(regexp = "^010-[0-9]{4}-[0-9]{4}$") String phone,
String status,
String major,
String job) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ public record MemberRes(
@NotNull Long memberId,
@NotNull String email,
@NotNull String name,
String phone,
String profileUrl,
MemberType memberType,
LoginType loginType,
Expand All @@ -26,6 +27,7 @@ public static MemberRes of(Member member) {
.memberId(member.getMemberId())
.email(member.getEmail())
.name(member.getName())
.phone(member.getPhone())
.profileUrl(member.getProfileUrl())
.memberType(member.getMemberType())
.loginType(member.getLoginType())
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,9 @@ public class Member extends BaseTimeEntity {
@Column(name = "name", nullable = false, columnDefinition = "varchar(50)")
private String name;

@Column(name = "phone", columnDefinition = "varchar(15)")
private String phone;

@Column(name = "profile_url", columnDefinition = "text")
private String profileUrl;

Expand All @@ -55,17 +58,18 @@ public class Member extends BaseTimeEntity {

public void update(MemberReq memberReq) {
this.name = memberReq.name();
this.phone = memberReq.phone();
this.status = memberReq.status();
this.major = memberReq.major();
this.job = memberReq.job();
}

@Builder
public Member(Long memberId, String email, String password, String name, String profileUrl, String memberType, String loginType, String status, String major, String job) {
this.memberId = memberId;
public Member(String email, String password, String name, String phone, String profileUrl, String memberType, String loginType, String status, String major, String job) {
this.email = email;
this.password = password;
this.name = name;
this.phone = phone;
this.profileUrl = profileUrl;
this.memberType = MemberType.valueOf(memberType);
this.loginType = LoginType.valueOf(loginType);
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
package com.gongjakso.server.domain.member.controller;

public class MemberControllerTest {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
package com.gongjakso.server.domain.member.service;

import com.gongjakso.server.domain.member.dto.MemberReq;
import com.gongjakso.server.domain.member.dto.MemberRes;
import com.gongjakso.server.domain.member.entity.Member;
import com.gongjakso.server.domain.member.repository.MemberRepository;
import com.gongjakso.server.domain.member.util.MemberUtilTest;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.junit.jupiter.MockitoExtension;

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


@ExtendWith(MockitoExtension.class)
class MemberServiceTest {

@InjectMocks
private MemberService memberService;

@Mock
private MemberRepository memberRepository;

private Member member;

@BeforeEach
void setUp() {
member = MemberUtilTest.buildMember();
}

@Test
@DisplayName("사용자 정보 수정 테스트")
void updateMemberTest() {
// given
MemberReq memberReq = MemberUtilTest.buildMemberReq();
given(memberRepository.save(member)).willReturn(member);

// when
MemberRes memberRes = memberService.update(member, memberReq);

// then
assertThat(memberRes).isNotNull();
assertThat(memberRes.name()).isEqualTo(member.getName());
assertThat(memberRes.email()).isEqualTo(member.getEmail());
assertThat(memberRes.phone()).isEqualTo(member.getPhone());
assertThat(memberRes.memberType()).isEqualTo(member.getMemberType());
assertThat(memberRes.loginType()).isEqualTo(member.getLoginType());
assertThat(memberRes.status()).isEqualTo(member.getStatus());
assertThat(memberRes.major()).isEqualTo(member.getMajor());
assertThat(memberRes.job()).isEqualTo(member.getJob());
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
package com.gongjakso.server.domain.member.util;

import com.gongjakso.server.domain.member.dto.MemberReq;
import com.gongjakso.server.domain.member.entity.Member;
import com.gongjakso.server.domain.member.enumerate.LoginType;
import com.gongjakso.server.domain.member.enumerate.MemberType;

public class MemberUtilTest {

public static Member buildMember() {
return Member.builder()
.email("gongjakso@google.com")
.name("공작소")
.phone("010-1010-1010")
.memberType(MemberType.GENERAL.toString())
.loginType(LoginType.KAKAO.toString())
.status("상태")
.major("전공")
.job("내 미래 꿈")
.build();
}

public static MemberReq buildMemberReq() {
return MemberReq.builder()
.name("변경 공작소")
.phone("010-0101-0101")
.status("변경된 상태")
.major("변경된 전공")
.job("변경된 내 미래 꿈")
.build();
}
}

0 comments on commit 5f79f2c

Please sign in to comment.