/
koskv
/
TeamSync-Tests
Обзор
Документация
Войти
/
koskv
/
TeamSync-Tests
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/main/java/TeamSyncTest/utils/api/CreateFromJson.java
50 строк
2 KB
Koskv
add testdata.properties, add some tests
13 окт 2025, 17:30
13 окт 2025, 17:30
0fad2f8
Код
Авторство
О чём код?
package TeamSyncTest.utils.api; import com.fasterxml.jackson.databind.ObjectMapper; import io.qameta.allure.Allure; import io.qameta.allure.Step; import lombok.Data; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.nio.file.Files; @Component public class CreateFromJson { private final ObjectMapper objectMapper; // Инжекция ObjectMapper через конструктор //@Autowired public CreateFromJson(ObjectMapper objectMapper) { this.objectMapper = objectMapper; } @Step("Создание тела запроса из JSON файла: {jsonFilePath}") public <T> T createBodyFromJson(String jsonFilePath, Class<T> clazz) throws IOException { try { File jsonFile = new File(jsonFilePath); if (!jsonFile.exists()) { throw new FileNotFoundException("Файл не найден: " + jsonFilePath); } T result = objectMapper.readValue(jsonFile, clazz); Allure.addAttachment("JSON из файла", Files.readString(jsonFile.toPath())); Allure.addAttachment("Десериализованный объект", result.toString()); return result; } catch (IOException e) { Allure.addAttachment("Ошибка при чтении JSON", e.getMessage()); throw e; } } }