форматирование вывода результатов тестирования в почте.

This commit is contained in:
2023-10-21 02:47:21 +03:00
parent a334d55522
commit 7fac46b249
10 changed files with 85 additions and 23 deletions

View File

@@ -245,22 +245,28 @@ public class TestingPlanner {
File results_json_file = new File(sapforTasksPackage.workspace, Constants.results_json);
if (results_json_file.exists()) {
SapforTasksResults_json results_json = (SapforTasksResults_json) Utils.jsonFromFile(results_json_file, SapforTasksResults_json.class);
result_lines.add("");
result_lines.add("Всего задач: " + results_json.tasks.size());
LinkedHashMap<TaskState, LinkedHashMap<String, Vector<SapforTask>>> sortedTasks = new LinkedHashMap<>();
LinkedHashMap<TaskState, LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>>> sortedTasks = new LinkedHashMap<>();
//рассортировать задачи по конфигурациям.
for (TaskState state : TaskState.values()) {
LinkedHashMap<String, Vector<SapforTask>> tasksByFlags = new LinkedHashMap<>();
LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>> tasksByFlags = new LinkedHashMap<>();
sortedTasks.put(state, tasksByFlags);
//--
for (SapforTask task : results_json.tasks) {
if (task.state.equals(state)) {
Vector<SapforTask> tasks = null;
LinkedHashMap<String, Vector<SapforTask>> groups_tasks = null;
if (tasksByFlags.containsKey(task.flags)) {
tasks = tasksByFlags.get(task.flags);
groups_tasks = tasksByFlags.get(task.flags);
} else {
groups_tasks = new LinkedHashMap<>();
tasksByFlags.put(task.flags, groups_tasks);
}
Vector<SapforTask> tasks = null;
if (groups_tasks.containsKey(task.group_description)) {
tasks = groups_tasks.get(task.group_description);
} else {
tasks = new Vector<>();
tasksByFlags.put(task.flags, tasks);
groups_tasks.put(task.group_description, tasks);
}
tasks.add(task);
}
@@ -268,22 +274,36 @@ public class TestingPlanner {
}
//--
for (TaskState state : sortedTasks.keySet()) {
LinkedHashMap<String, Vector<SapforTask>> tasksByFlags = sortedTasks.get(state);
LinkedHashMap<String, LinkedHashMap<String, Vector<SapforTask>>> tasksByFlags = sortedTasks.get(state);
if (!tasksByFlags.isEmpty()) {
int count = 0;
if (state.equals(TaskState.DoneWithErrors)) {
Vector<String> tasksLines = new Vector<>();
Vector<String> flagsLines = new Vector<>();
for (String flags : tasksByFlags.keySet()) {
Vector<SapforTask> tasks = tasksByFlags.get(flags);
count += tasks.size();
for (SapforTask task : tasks)
tasksLines.add(task.test_description + " " + flags + " " + task.getVersionsChain());
LinkedHashMap<String, Vector<SapforTask>> tasksByGroups = tasksByFlags.get(flags);
for (String group : tasksByGroups.keySet()) {
Vector<SapforTask> tasks = tasksByGroups.get(group);
flagsLines.add("Группа " + group + ": "+tasks.size());
count += tasks.size();
for (SapforTask task : tasks)
flagsLines.add(
"тест: " +
Utils.Brackets(task.test_description) + " " +
"флаги: "
+ Utils.Brackets(flags) + " " +
"версии: " +
task.getVersionsChain());
}
}
result_lines.add(state.getDescription() + " :" + count);
result_lines.addAll(tasksLines);
result_lines.addAll(flagsLines);
} else {
for (String flags : tasksByFlags.keySet()) {
count += tasksByFlags.get(flags).size();
LinkedHashMap<String, Vector<SapforTask>> tasksByGroups = tasksByFlags.get(flags);
for (String group : tasksByGroups.keySet()) {
Vector<SapforTask> tasks = tasksByGroups.get(group);
count += tasks.size();
}
}
result_lines.add(state.getDescription() + " :" + count);
}