articles-backend-app

Форк
0
83 строки · 2.3 Кб
1
package by.andd3dfx.mappers;
2

3
import static org.hamcrest.CoreMatchers.is;
4
import static org.hamcrest.CoreMatchers.nullValue;
5
import static org.hamcrest.MatcherAssert.assertThat;
6

7
import by.andd3dfx.dto.AuthorDto;
8
import by.andd3dfx.persistence.entities.Author;
9
import java.util.Arrays;
10
import java.util.List;
11
import org.junit.jupiter.api.Test;
12
import org.mapstruct.factory.Mappers;
13

14
class AuthorMapperTest {
15

16
    private AuthorMapper mapper = Mappers.getMapper(AuthorMapper.class);
17

18
    @Test
19
    void toAuthorDto() {
20
        Author author = buildAuthor();
21

22
        AuthorDto authorDto = mapper.toAuthorDto(author);
23

24
        checkCompareAssertions(authorDto, author);
25
    }
26

27
    @Test
28
    void toAuthorDtoForNull() {
29
        assertThat(mapper.toAuthorDto(null), nullValue());
30
    }
31

32
    @Test
33
    void toAuthorDtoList() {
34
        Author author = buildAuthor();
35
        List<Author> authors = Arrays.asList(author);
36

37
        List<AuthorDto> authorDtoItems = mapper.toAuthorDtoList(authors);
38

39
        assertThat("Wrong result list size", authorDtoItems.size(), is(1));
40
        checkCompareAssertions(authorDtoItems.get(0), author);
41
    }
42

43
    @Test
44
    void toArticleDtoListForNull() {
45
        assertThat(mapper.toAuthorDtoList(null), nullValue());
46
    }
47

48
    @Test
49
    void toAuthor() {
50
        AuthorDto authorDto = buildAuthorDto();
51

52
        Author author = mapper.toAuthor(authorDto);
53

54
        checkCompareAssertions(authorDto, author);
55
    }
56

57
    @Test
58
    void toAuthorForNull() {
59
        assertThat(mapper.toAuthor(null), nullValue());
60
    }
61

62
    private Author buildAuthor() {
63
        Author author = new Author();
64
        author.setId(123L);
65
        author.setFirstName("Isaac");
66
        author.setLastName("Sirin");
67
        return author;
68
    }
69

70
    private AuthorDto buildAuthorDto() {
71
        AuthorDto result = new AuthorDto();
72
        result.setId(123L);
73
        result.setFirstName("Isaac");
74
        result.setLastName("Sirin");
75
        return result;
76
    }
77

78
    private void checkCompareAssertions(AuthorDto authorDto, Author author) {
79
        assertThat("Wrong id", authorDto.getId(), is(author.getId()));
80
        assertThat("Wrong firstName", authorDto.getFirstName(), is(author.getFirstName()));
81
        assertThat("Wrong lastName", authorDto.getLastName(), is(author.getLastName()));
82
    }
83
}
84

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.