비버놀로지

[Spring JPA] 1-10. 회원 가입 : 인증 메일 확인 테스트 본문

LANGUAGE STUDY/Spring

[Spring JPA] 1-10. 회원 가입 : 인증 메일 확인 테스트

KUNDUZ 2021. 5. 1. 18:41
728x90
    @DisplayName("인증 메일 확인 - 입력값 오류")
    @Test
    void checkEmailToken_with_wrong_input() throws Exception {
        mockMvc.perform(get("/check-email-token")
                .param("token", "sdfjslwfwef")
                .param("email", "email@email.com"))
                .andExpect(status().isOk())
                .andExpect(model().attributeExists("error"))
                .andExpect(view().name("account/checked-email"))
                .andExpect(unauthenticated());
    }

    @DisplayName("인증 메일 확인 - 입력값 정상")
    @Test
    void checkEmailToken() throws Exception {
        Account account = Account.builder()
                .email("test@email.com")
                .password("12345678")
                .nickname("keesun")
                .build();
        Account newAccount = accountRepository.save(account);
        newAccount.generateEmailCheckToken();

        mockMvc.perform(get("/check-email-token")
                .param("token", newAccount.getEmailCheckToken())
                .param("email", newAccount.getEmail()))
                .andExpect(status().isOk())
                .andExpect(model().attributeDoesNotExist("error"))
                .andExpect(model().attributeExists("nickname"))
                .andExpect(model().attributeExists("numberOfUser"))
                .andExpect(view().name("account/checked-email"))
                .andExpect(authenticated().withUsername("keesun"));
    }

 

위의 코드를 AccountControllerTest에 추가를 해서 이메일 인증이 제대로 동작하는지 test를 할 수 있도록 추가해 줍니다.

 

위의 코드를 실행해서 정상이 나온다면 코드에 문제가 없는 것을 확인할 수 있습니다.

 

 

 

728x90
Comments