Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -4,24 +4,37 @@
import static org.junit.jupiter.api.Assertions.assertNull;

import com.DesktopApplicationClientJava.validation.utils.ErrorMessages;
import io.qameta.allure.Epic;
import io.qameta.allure.Feature;
import io.qameta.allure.Story;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;

@Epic("Проверка ввода")
@Feature("FirstNameValidator")
@Story("Валидация имени")
@Tag("role:none")
@DisplayName("Проверка имени")
public class FirstNameValidatorTest {
private static final String FIELD_NAME = FirstNameValidator.FIELD_NAME;

@Test
@DisplayName("Пустое имя отклоняется")
void emptyFirstNameIsRejected() {
assertEquals(ErrorMessages.Required, FirstNameValidator.validate(""));
}

@Test
@DisplayName("Короткое имя отклоняется")
void shortFirstNameIsRejected() {
assertEquals(
ErrorMessages.MinLength(FIELD_NAME, FirstNameValidator.MIN_LENGTH),
FirstNameValidator.validate("А"));
}

@Test
@DisplayName("Корректное имя принимается")
void validFirstNameIsAccepted() {
assertNull(FirstNameValidator.validate("Антон"));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,24 +4,37 @@
import static org.junit.jupiter.api.Assertions.assertNull;

import com.DesktopApplicationClientJava.validation.utils.ErrorMessages;
import io.qameta.allure.Epic;
import io.qameta.allure.Feature;
import io.qameta.allure.Story;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;

@Epic("Проверка ввода")
@Feature("LastNameValidator")
@Story("Валидация фамилии")
@Tag("role:none")
@DisplayName("Проверка фамилии")
public class LastNameValidatorTest {
private static final String FIELD_NAME = LastNameValidator.FIELD_NAME;

@Test
@DisplayName("Пустая фамилия отклоняется")
void emptyLastNameIsRejected() {
assertEquals(ErrorMessages.Required, LastNameValidator.validate(""));
}

@Test
@DisplayName("Короткая фамилия отклоняется")
void shortLastNameIsRejected() {
assertEquals(
ErrorMessages.MinLength(FIELD_NAME, LastNameValidator.MIN_LENGTH),
LastNameValidator.validate("А"));
}

@Test
@DisplayName("Корректная фамилия принимается")
void validLastNameIsAccepted() {
assertNull(LastNameValidator.validate("Антонов"));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,24 +4,37 @@
import static org.junit.jupiter.api.Assertions.assertNull;

import com.DesktopApplicationClientJava.validation.utils.ErrorMessages;
import io.qameta.allure.Epic;
import io.qameta.allure.Feature;
import io.qameta.allure.Story;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;

@Epic("Проверка ввода")
@Feature("PasswordValidator")
@Story("Валидация пароля")
@Tag("role:none")
@DisplayName("Проверка пароля")
public class PasswordValidatorTest {
private static final String FIELD_NAME = PasswordValidator.FIELD_NAME;

@Test
@DisplayName("Пустой пароль отклоняется")
void emptyPasswordIsRejected() {
assertEquals(ErrorMessages.Required, PasswordValidator.validate(""));
}

@Test
@DisplayName("Короткий пароль отклоняется")
void shortPasswordIsRejected() {
assertEquals(
ErrorMessages.MinLength(FIELD_NAME, PasswordValidator.MIN_LENGTH),
PasswordValidator.validate("short"));
}

@Test
@DisplayName("Пароль из восьми символов принимается")
void exactlyEightCharPasswordIsAccepted() {
assertNull(PasswordValidator.validate("12345678"));
}
Expand Down
11 changes: 11 additions & 0 deletions src/test/java/mapper/FileMapperTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,23 @@
import com.DesktopApplicationClientJava.Api.Dto.response.FileDto;
import com.DesktopApplicationClientJava.entities.FileInfo;
import com.DesktopApplicationClientJava.mapper.FileMapper;
import io.qameta.allure.Epic;
import io.qameta.allure.Feature;
import io.qameta.allure.Story;
import java.util.UUID;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;

@Epic("Отображение данных")
@Feature("FileMapper")
@Story("Преобразование файла в сущность")
@Tag("role:none")
@DisplayName("Преобразование файла")
class FileMapperTest {

@Test
@DisplayName("Все поля файла преобразуются")
void mapsAllFields() {
UUID uuid = UUID.randomUUID();
FileDto dto = new FileDto(uuid, "отчёт.pdf", "application/pdf", 12345L);
Expand Down
12 changes: 12 additions & 0 deletions src/test/java/mapper/ResourceMapperTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,25 @@
import com.DesktopApplicationClientJava.Api.Dto.response.ResourceDto;
import com.DesktopApplicationClientJava.entities.Resource;
import com.DesktopApplicationClientJava.mapper.ResourceMapper;
import io.qameta.allure.Epic;
import io.qameta.allure.Feature;
import io.qameta.allure.Story;
import java.time.LocalDateTime;
import java.util.List;
import java.util.UUID;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;

@Epic("Отображение данных")
@Feature("ResourceMapper")
@Story("Преобразование ресурса в сущность")
@Tag("role:none")
@DisplayName("Преобразование ресурса")
class ResourceMapperTest {

@Test
@DisplayName("Все поля ресурса с файлами преобразуются")
void mapsAllFieldsIncludingFiles() {
UUID uuid = UUID.randomUUID();
UUID fileUuid = UUID.randomUUID();
Expand Down Expand Up @@ -42,6 +53,7 @@ void mapsAllFieldsIncludingFiles() {
}

@Test
@DisplayName("Отсутствие файлов даёт пустой список")
void nullFilesBecomeEmptyList() {
ResourceDto dto =
new ResourceDto(
Expand Down
12 changes: 12 additions & 0 deletions src/test/java/mapper/UserDtoParsingTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,24 @@
import com.DesktopApplicationClientJava.Api.Dto.response.UserDto;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import io.qameta.allure.Epic;
import io.qameta.allure.Feature;
import io.qameta.allure.Story;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;

@Epic("Отображение данных")
@Feature("UserDto")
@Story("Разбор контракта пользователя")
@Tag("role:none")
@DisplayName("Разбор пользователя из JSON")
class UserDtoParsingTest {

private final ObjectMapper mapper = new ObjectMapper().registerModule(new JavaTimeModule());

@Test
@DisplayName("Контракт бэкенда разбирается один к одному")
void parsesBackendContractOneToOne() throws Exception {
String json =
"""
Expand All @@ -36,6 +47,7 @@ void parsesBackendContractOneToOne() throws Exception {
}

@Test
@DisplayName("Неизвестные поля завершаются ошибкой")
void unknownPropertiesFailFast() {
String json = "{\"uuid\": null, \"unexpectedField\": 1}";

Expand Down
11 changes: 11 additions & 0 deletions src/test/java/mapper/UserMapperTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,24 @@
import com.DesktopApplicationClientJava.entities.Role;
import com.DesktopApplicationClientJava.entities.User;
import com.DesktopApplicationClientJava.mapper.UserMapper;
import io.qameta.allure.Epic;
import io.qameta.allure.Feature;
import io.qameta.allure.Story;
import java.time.LocalDateTime;
import java.util.UUID;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;

@Epic("Отображение данных")
@Feature("UserMapper")
@Story("Преобразование пользователя в сущность")
@Tag("role:none")
@DisplayName("Преобразование пользователя")
class UserMapperTest {

@Test
@DisplayName("Поля бэкенда преобразуются в сущность пользователя")
void mapsBackendLowercaseNamesToCamelCaseFields() {
UUID uuid = UUID.randomUUID();
UserDto dto =
Expand Down
Loading