Search in sources :

Example 6 with User

use of com.gmoon.springsecurityjwt.user.User in project toy by gmoon92.

the class JacksonUtilsTest method testToString_jacksonTester.

@Test
void testToString_jacksonTester() throws IOException {
    // given
    User user = User.create("gmoon", RandomStringUtils.randomAlphanumeric(10), Role.ADMIN);
    // when then
    assertThat(json.write(user)).hasJsonPathStringValue("@.password");
    assertThat(json.write(user)).extractingJsonPathStringValue("@.username").isEqualTo("gmoon");
    assertThat(json.write(user)).extractingJsonPathArrayValue("@.authorities").containsExactly("ADMIN");
}
Also used : User(com.gmoon.springsecurityjwt.user.User) Test(org.junit.jupiter.api.Test) JsonTest(org.springframework.boot.test.autoconfigure.json.JsonTest)

Example 7 with User

use of com.gmoon.springsecurityjwt.user.User in project Toy by gmoon92.

the class JacksonUtilsTest method testToString.

@Test
void testToString() {
    // given
    User user = User.create("gmoon", "123", Role.ADMIN);
    // when
    String jsonString = JacksonUtils.toString(user);
    // then
    assertThat(jsonString).contains("username", "gmoon", "authorities", "ADMIN");
}
Also used : User(com.gmoon.springsecurityjwt.user.User) Test(org.junit.jupiter.api.Test) JsonTest(org.springframework.boot.test.autoconfigure.json.JsonTest)

Example 8 with User

use of com.gmoon.springsecurityjwt.user.User in project Toy by gmoon92.

the class JwtUtilTest method testDecode.

@Test
@DisplayName("JWT 복호화 검증")
void testDecode() {
    // when
    String token = jwtUtil.generate(User.create("gmoon", "123", Role.ADMIN));
    User user = jwtUtil.decode(token);
    // then
    assertThat(user).hasFieldOrPropertyWithValue("username", "gmoon").hasFieldOrPropertyWithValue("role", Role.ADMIN);
}
Also used : User(com.gmoon.springsecurityjwt.user.User) Test(org.junit.jupiter.api.Test) SpringBootTest(org.springframework.boot.test.context.SpringBootTest) DisplayName(org.junit.jupiter.api.DisplayName)

Example 9 with User

use of com.gmoon.springsecurityjwt.user.User in project Toy by gmoon92.

the class TeamControllerTest method testGet.

@Test
@DisplayName("팀을 조회한다.")
void testGet() throws Exception {
    // given
    User admin = getUserOrElseThrow("admin");
    // when
    ResultActions result = verify(get(URL_OF_TEAM), admin);
    // then
    result.andExpect(status().isOk());
    result.andExpect(jsonPath("$.id").value(WEB_TEAM_ID));
}
Also used : User(com.gmoon.springsecurityjwt.user.User) ResultActions(org.springframework.test.web.servlet.ResultActions) Test(org.junit.jupiter.api.Test) BaseSpringBootTest(com.gmoon.springsecurityjwt.base.BaseSpringBootTest) DisplayName(org.junit.jupiter.api.DisplayName)

Example 10 with User

use of com.gmoon.springsecurityjwt.user.User in project Toy by gmoon92.

the class TeamControllerTest method testDelete_forbidden.

@Test
@DisplayName("팀 삭제는 어드민 계정만 가능하다. " + "권한이 없는 계정이 접근할 경우 Forbidden(403) 에러가 발생한다.")
void testDelete_forbidden() throws Exception {
    // given
    User user = getUserOrElseThrow("user1");
    // when
    ResultActions result = verify(delete(URL_OF_TEAM), user);
    // then
    result.andExpect(status().is4xxClientError());
    result.andExpect(status().isForbidden());
}
Also used : User(com.gmoon.springsecurityjwt.user.User) ResultActions(org.springframework.test.web.servlet.ResultActions) Test(org.junit.jupiter.api.Test) BaseSpringBootTest(com.gmoon.springsecurityjwt.base.BaseSpringBootTest) DisplayName(org.junit.jupiter.api.DisplayName)

Aggregations

User (com.gmoon.springsecurityjwt.user.User)18 Test (org.junit.jupiter.api.Test)14 DisplayName (org.junit.jupiter.api.DisplayName)8 BaseSpringBootTest (com.gmoon.springsecurityjwt.base.BaseSpringBootTest)6 JsonTest (org.springframework.boot.test.autoconfigure.json.JsonTest)6 ResultActions (org.springframework.test.web.servlet.ResultActions)6 JWTVerificationException (com.auth0.jwt.exceptions.JWTVerificationException)2 JwtVerifyException (com.gmoon.springsecurityjwt.jwt.exception.JwtVerifyException)2 SpringBootTest (org.springframework.boot.test.context.SpringBootTest)2 UsernamePasswordAuthenticationToken (org.springframework.security.authentication.UsernamePasswordAuthenticationToken)2 Authentication (org.springframework.security.core.Authentication)2