Ajay Yadav
Initial deployment of da-discovery-dev
442299c
package com.dalab.discovery.common.model;
import static org.assertj.core.api.Assertions.*;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import com.dalab.discovery.client.dto.AdminUserDTO;
import com.dalab.discovery.client.dto.UserDTO;
import com.dalab.discovery.crawler.service.mapper.CrawlerUserMapper;
/**
* Unit tests for {@link UserMapper}.
*/
class UserMapperTest {
private static final String DEFAULT_LOGIN = "johndoe";
private static final String DEFAULT_ID = "id1";
private CrawlerUserMapper userMapper;
private CrawlerUser user;
private AdminUserDTO userDto;
@BeforeEach
public void init() {
userMapper = new CrawlerUserMapper();
user = new CrawlerUser();
user.setLogin(DEFAULT_LOGIN);
user.setActivated(true);
user.setEmail("johndoe@localhost");
user.setFirstName("john");
user.setLastName("doe");
user.setImageUrl("image_url");
user.setLangKey("en");
userDto = new AdminUserDTO(user);
}
@Test
void usersToUserDTOsShouldMapOnlyNonNullUsers() {
List<CrawlerUser> users = new ArrayList<>();
users.add(user);
users.add(null);
List<UserDTO> userDTOS = userMapper.usersToUserDTOs(users);
assertThat(userDTOS).isNotEmpty().size().isEqualTo(1);
}
@Test
void userDTOsToUsersShouldMapOnlyNonNullUsers() {
List<AdminUserDTO> usersDto = new ArrayList<>();
usersDto.add(userDto);
usersDto.add(null);
List<CrawlerUser> users = userMapper.userDTOsToUsers(usersDto);
assertThat(users).isNotEmpty().size().isEqualTo(1);
}
@Test
void userDTOsToUsersWithAuthoritiesStringShouldMapToUsersWithAuthoritiesDomain() {
Set<String> authoritiesAsString = new HashSet<>();
authoritiesAsString.add("ADMIN");
userDto.setAuthorities(authoritiesAsString);
List<AdminUserDTO> usersDto = new ArrayList<>();
usersDto.add(userDto);
List<CrawlerUser> users = userMapper.userDTOsToUsers(usersDto);
assertThat(users).isNotEmpty().size().isEqualTo(1);
assertThat(users.get(0).getAuthorities()).isNotNull();
assertThat(users.get(0).getAuthorities()).isNotEmpty();
assertThat(users.get(0).getAuthorities().iterator().next().getName()).isEqualTo("ADMIN");
}
@Test
void userDTOsToUsersMapWithNullAuthoritiesStringShouldReturnUserWithEmptyAuthorities() {
userDto.setAuthorities(null);
List<AdminUserDTO> usersDto = new ArrayList<>();
usersDto.add(userDto);
List<CrawlerUser> users = userMapper.userDTOsToUsers(usersDto);
assertThat(users).isNotEmpty().size().isEqualTo(1);
assertThat(users.get(0).getAuthorities()).isNotNull();
assertThat(users.get(0).getAuthorities()).isEmpty();
}
@Test
void userDTOToUserMapWithAuthoritiesStringShouldReturnUserWithAuthorities() {
Set<String> authoritiesAsString = new HashSet<>();
authoritiesAsString.add("ADMIN");
userDto.setAuthorities(authoritiesAsString);
CrawlerUser user = userMapper.userDTOToUser(userDto);
assertThat(user).isNotNull();
assertThat(user.getAuthorities()).isNotNull();
assertThat(user.getAuthorities()).isNotEmpty();
assertThat(user.getAuthorities().iterator().next().getName()).isEqualTo("ADMIN");
}
@Test
void userDTOToUserMapWithNullAuthoritiesStringShouldReturnUserWithEmptyAuthorities() {
userDto.setAuthorities(null);
CrawlerUser user = userMapper.userDTOToUser(userDto);
assertThat(user).isNotNull();
assertThat(user.getAuthorities()).isNotNull();
assertThat(user.getAuthorities()).isEmpty();
}
@Test
void userDTOToUserMapWithNullUserShouldReturnNull() {
assertThat(userMapper.userDTOToUser(null)).isNull();
}
@Test
void testUserFromId() {
assertThat(userMapper.userFromId(DEFAULT_ID).getId()).isEqualTo(DEFAULT_ID);
assertThat(userMapper.userFromId(null)).isNull();
}
}