Skip to content

Commit

Permalink
Merge pull request #26240 from mshima/user-cleanup3
Browse files Browse the repository at this point in the history
move UserMapperTest to correct class
  • Loading branch information
mshima committed May 23, 2024
2 parents 3aacc3b + 5a68597 commit fc0f630
Show file tree
Hide file tree
Showing 3 changed files with 88 additions and 100 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -84,14 +84,19 @@ public class UserMapper {
user.setEmail(userDTO.getEmail());
<%_ if (!databaseTypeCassandra) { _%>
user.setImageUrl(userDTO.getImageUrl());
<%_ } _%>
<%_ if (generateSpringAuditor) { _%>
user.setCreatedBy(userDTO.getCreatedBy());
user.setCreatedDate(userDTO.getCreatedDate());
user.setLastModifiedBy(userDTO.getLastModifiedBy());
user.setLastModifiedDate(userDTO.getLastModifiedDate());
<%_ } _%>
user.setActivated(userDTO.isActivated());
user.setLangKey(userDTO.getLangKey());
<%_ if (databaseTypeSql || databaseTypeMongodb || databaseTypeNeo4j) { _%>
Set<Authority> authorities = this.authoritiesFromStrings(userDTO.getAuthorities());
user.setAuthorities(authorities);
<%_ } _%>
<%_ if (databaseTypeCassandra || databaseTypeCouchbase) { _%>
<%_ } else { _%>
Set<String> authorities = this.cleanNullStringAuthorities(userDTO.getAuthorities());
user.setAuthorities(authorities);
<%_ } _%>
Expand All @@ -114,8 +119,7 @@ public class UserMapper {
return authorities;
}
<%_ } _%>
<%_ if (databaseTypeCassandra || databaseTypeCouchbase) { _%>
<%_ } else { _%>
private Set<String> cleanNullStringAuthorities(Set<String> authoritiesAsString) {
Set<String> authorities = new HashSet<>();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,24 @@
package <%= packageName %>.service.mapper;
import <%= user.entityAbsoluteClass %>;
import <%= packageName %>.security.AuthoritiesConstants;
import <%= packageName %>.service.dto.<%= user.adminUserDto %>;
import <%= packageName %>.service.dto.<%= user.dtoClass %>;
<%_ if (databaseTypeSql || databaseTypeMongodb || databaseTypeNeo4j) { _%>
import <%= packageName %>.domain.Authority;
<%_ } else { _%>
import java.util.stream.Stream;
import java.util.stream.Collectors;
<%_ } _%>
<%_ if (!authenticationTypeOauth2) { _%>
import org.apache.commons.lang3.RandomStringUtils;
<%_ } _%>
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
<%_ if (generateSpringAuditor) { _%>
import java.time.Instant;
<%_ } _%>
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
Expand Down Expand Up @@ -67,12 +77,74 @@ class UserMapperTest {
user.setLastName("doe");
<%_ if (!databaseTypeCassandra) { _%>
user.setImageUrl("image_url");
<%_ } _%>
<%_ if (generateSpringAuditor) { _%>
user.setCreatedBy(DEFAULT_LOGIN);
user.setCreatedDate(Instant.now());
user.setLastModifiedBy(DEFAULT_LOGIN);
user.setLastModifiedDate(Instant.now());
<%_ } _%>
user.setLangKey("en");

<%_ if (databaseTypeSql || databaseTypeMongodb || databaseTypeNeo4j) { _%>
Set<Authority> authorities = new HashSet<>();
Authority authority = new Authority();
authority.setName(AuthoritiesConstants.USER);
authorities.add(authority);
user.setAuthorities(authorities);
<%_ } else { _%>
user.setAuthorities(Stream.of(AuthoritiesConstants.USER).collect(Collectors.toSet()));
<%_ } _%>

userDto = new <%= user.adminUserDto %>(user);
}

@Test
void testUserToUserDTO() {
<%= user.adminUserDto %> convertedUserDto = userMapper.userToAdminUserDTO(user);

assertThat(convertedUserDto.getId()).isEqualTo(user.getId());
assertThat(convertedUserDto.getLogin()).isEqualTo(user.getLogin());
assertThat(convertedUserDto.getFirstName()).isEqualTo(user.getFirstName());
assertThat(convertedUserDto.getLastName()).isEqualTo(user.getLastName());
assertThat(convertedUserDto.getEmail()).isEqualTo(user.getEmail());
assertThat(convertedUserDto.isActivated()).isEqualTo(user.isActivated());
<%_ if (!databaseTypeCassandra) { _%>
assertThat(convertedUserDto.getImageUrl()).isEqualTo(user.getImageUrl());
<%_ } _%>
<%_ if (generateSpringAuditor) { _%>
assertThat(convertedUserDto.getCreatedBy()).isEqualTo(user.getCreatedBy());
assertThat(convertedUserDto.getCreatedDate()).isEqualTo(user.getCreatedDate());
assertThat(convertedUserDto.getLastModifiedBy()).isEqualTo(user.getLastModifiedBy());
assertThat(convertedUserDto.getLastModifiedDate()).isEqualTo(user.getLastModifiedDate());
<%_ } _%>
assertThat(convertedUserDto.getLangKey()).isEqualTo(user.getLangKey());
assertThat(convertedUserDto.getAuthorities()).containsExactly(AuthoritiesConstants.USER);
}

@Test
void testUserDTOtoUser() {
<%= user.persistClass %> convertedUser = userMapper.userDTOToUser(userDto);

assertThat(convertedUser.getId()).isEqualTo(userDto.getId());
assertThat(convertedUser.getLogin()).isEqualTo(userDto.getLogin());
assertThat(convertedUser.getFirstName()).isEqualTo(userDto.getFirstName());
assertThat(convertedUser.getLastName()).isEqualTo(userDto.getLastName());
assertThat(convertedUser.getEmail()).isEqualTo(userDto.getEmail());
assertThat(convertedUser.isActivated()).isEqualTo(userDto.isActivated());
<%_ if (!databaseTypeCassandra) { _%>
assertThat(convertedUser.getImageUrl()).isEqualTo(userDto.getImageUrl());
<%_ } _%>
assertThat(convertedUser.getLangKey()).isEqualTo(userDto.getLangKey());
<%_ if (generateSpringAuditor) { _%>
assertThat(convertedUser.getCreatedBy()).isEqualTo(userDto.getCreatedBy());
assertThat(convertedUser.getCreatedDate()).isEqualTo(userDto.getCreatedDate());
assertThat(convertedUser.getLastModifiedBy()).isEqualTo(userDto.getLastModifiedBy());
assertThat(convertedUser.getLastModifiedDate()).isEqualTo(userDto.getLastModifiedDate());
<%_ } _%>
assertThat(convertedUser.getAuthorities())<% if (!databaseTypeCassandra && !databaseTypeCouchbase) { %>.extracting("name")<%_ } _%>.containsExactly(AuthoritiesConstants.USER);
}

@Test
void usersToUserDTOsShouldMapOnlyNonNullUsers() {
List<<%= user.persistClass %>> users = new ArrayList<>();
Expand Down Expand Up @@ -141,20 +213,15 @@ class UserMapperTest {

@Test
void userDTOToUserMapWithAuthoritiesStringShouldReturnUserWithAuthorities() {
Set<String> authoritiesAsString = new HashSet<>();
authoritiesAsString.add("ADMIN");
userDto.setAuthorities(authoritiesAsString);
<%= user.persistClass %> convertedUser = userMapper.userDTOToUser(userDto);

<%= user.persistClass %> user = userMapper.userDTOToUser(userDto);

assertThat(user).isNotNull();
assertThat(user.getAuthorities()).isNotNull();
assertThat(user.getAuthorities()).isNotEmpty();
<%_ if (databaseTypeSql || databaseTypeMongodb) { _%>
assertThat(user.getAuthorities().iterator().next().getName()).isEqualTo("ADMIN");
<%_ } _%>
<%_ if (databaseTypeCassandra || databaseTypeCouchbase) { _%>
assertThat(user.getAuthorities().iterator().next()).isEqualTo("ADMIN");
assertThat(convertedUser).isNotNull();
assertThat(convertedUser.getAuthorities()).isNotNull();
assertThat(convertedUser.getAuthorities()).isNotEmpty();
<%_ if (databaseTypeSql || databaseTypeMongodb || databaseTypeNeo4j) { _%>
assertThat(convertedUser.getAuthorities().iterator().next().getName()).isEqualTo(AuthoritiesConstants.USER);
<%_ } else { _%>
assertThat(convertedUser.getAuthorities().iterator().next()).isEqualTo(AuthoritiesConstants.USER);
<%_ } _%>
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,9 +83,6 @@ import reactor.core.publisher.Mono;
<%_ if (databaseTypeSql && !reactive) { _%>
import jakarta.persistence.EntityManager;
<%_ } _%>
<%_ if (!databaseTypeCassandra) { _%>
import java.time.Instant;
<%_ } _%>
import java.util.*;
import java.util.function.Consumer;
<%_ if (databaseTypeCassandra || databaseTypeCouchbase) { _%>
Expand Down Expand Up @@ -952,86 +949,6 @@ class UserResourceIT {
assertThat(user1).isNotEqualTo(user2);
}

@Test
void testUserDTOtoUser() {
<%= user.adminUserDto %> userDTO = new <%= user.adminUserDto %>();
userDTO.setId(DEFAULT_ID);
userDTO.setLogin(DEFAULT_LOGIN);
userDTO.setFirstName(DEFAULT_FIRSTNAME);
userDTO.setLastName(DEFAULT_LASTNAME);
userDTO.setEmail(DEFAULT_EMAIL);
userDTO.setActivated(true);
<%_ if (!databaseTypeCassandra) { _%>
userDTO.setImageUrl(DEFAULT_IMAGEURL);
<%_ } _%>
userDTO.setLangKey(DEFAULT_LANGKEY);
<%_ if (!databaseTypeCassandra) { _%>
userDTO.setCreatedBy(DEFAULT_LOGIN);
userDTO.setLastModifiedBy(DEFAULT_LOGIN);
<%_ } _%>
userDTO.setAuthorities(Collections.singleton(AuthoritiesConstants.USER));

<%= user.persistClass %> user = userMapper.userDTOToUser(userDTO);
assertThat(user.getId()).isEqualTo(DEFAULT_ID);
assertThat(user.getLogin()).isEqualTo(DEFAULT_LOGIN);
assertThat(user.getFirstName()).isEqualTo(DEFAULT_FIRSTNAME);
assertThat(user.getLastName()).isEqualTo(DEFAULT_LASTNAME);
assertThat(user.getEmail()).isEqualTo(DEFAULT_EMAIL);
assertThat(user.isActivated()).isTrue();
<%_ if (!databaseTypeCassandra) { _%>
assertThat(user.getImageUrl()).isEqualTo(DEFAULT_IMAGEURL);
<%_ } _%>
assertThat(user.getLangKey()).isEqualTo(DEFAULT_LANGKEY);
<%_ if (!databaseTypeCassandra) { _%>
assertThat(user.getCreatedBy()).isNull();
assertThat(user.getCreatedDate()).isNotNull();
assertThat(user.getLastModifiedBy()).isNull();
assertThat(user.getLastModifiedDate()).isNotNull();
<%_ } _%>
assertThat(user.getAuthorities())<% if (!databaseTypeCassandra && !databaseTypeCouchbase) { %>.extracting("name")<%_ } _%>.containsExactly(AuthoritiesConstants.USER);
}

@Test
void testUserToUserDTO() {
user.setId(DEFAULT_ID);
<%_ if (!databaseTypeCassandra) { _%>
user.setCreatedBy(DEFAULT_LOGIN);
user.setCreatedDate(Instant.now());
user.setLastModifiedBy(DEFAULT_LOGIN);
user.setLastModifiedDate(Instant.now());
<%_ } _%>
<%_ if (!databaseTypeCassandra && !databaseTypeCouchbase) { _%>
Set<Authority> authorities = new HashSet<>();
Authority authority = new Authority();
authority.setName(AuthoritiesConstants.USER);
authorities.add(authority);
user.setAuthorities(authorities);
<%_ } else { _%>
user.setAuthorities(Stream.of(AuthoritiesConstants.USER).collect(Collectors.toSet()));
<%_ } _%>

<%= user.adminUserDto %> userDTO = userMapper.userToAdminUserDTO(user);

assertThat(userDTO.getId()).isEqualTo(DEFAULT_ID);
assertThat(userDTO.getLogin()).isEqualTo(DEFAULT_LOGIN);
assertThat(userDTO.getFirstName()).isEqualTo(DEFAULT_FIRSTNAME);
assertThat(userDTO.getLastName()).isEqualTo(DEFAULT_LASTNAME);
assertThat(userDTO.getEmail()).isEqualTo(DEFAULT_EMAIL);
assertThat(userDTO.isActivated()).isTrue();
<%_ if (!databaseTypeCassandra) { _%>
assertThat(userDTO.getImageUrl()).isEqualTo(DEFAULT_IMAGEURL);
<%_ } _%>
assertThat(userDTO.getLangKey()).isEqualTo(DEFAULT_LANGKEY);
<%_ if (!databaseTypeCassandra) { _%>
assertThat(userDTO.getCreatedBy()).isEqualTo(DEFAULT_LOGIN);
assertThat(userDTO.getCreatedDate()).isEqualTo(user.getCreatedDate());
assertThat(userDTO.getLastModifiedBy()).isEqualTo(DEFAULT_LOGIN);
assertThat(userDTO.getLastModifiedDate()).isEqualTo(user.getLastModifiedDate());
<%_ } _%>
assertThat(userDTO.getAuthorities()).containsExactly(AuthoritiesConstants.USER);
assertThat(userDTO.toString()).isNotNull();
}

private void assertPersistedUsers(Consumer<List<<%= user.persistClass %>>> userAssertion) {
<%_ if (databaseTypeCouchbase) { _%>
// The security filter chain clears the security context after remote calls
Expand Down

0 comments on commit fc0f630

Please sign in to comment.