распечатка задач с ошибками в почте

This commit is contained in:
2023-10-20 02:16:12 +03:00
parent 8c1cd78fc7
commit a334d55522
5 changed files with 56 additions and 20 deletions

4
.idea/workspace.xml generated
View File

@@ -8,8 +8,8 @@
<component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/PackageModeSupervisor/PackageModeSupervisor.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/PackageModeSupervisor/PackageModeSupervisor.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/PerformSapforTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/PerformSapforTask.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/ProjectData/Messages/Message.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/ProjectData/Messages/Message.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTask/SapforTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/SapforTestingSystem/SapforTask/SapforTask.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/TestingSystem/TestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/TestingPlanner.java" afterDir="false" />
</list>

View File

@@ -279,6 +279,8 @@ public class Message extends FileObject {
codedMessages.put("R199", "Зависимость по скаляру с типом lastprivate препятствует распараллеливанию данного цикла");
codedMessages.put("R200", "Добавлена lastprivate переменная '%s' к циклу на строке %d");
codedMessages.put("R202", "Ссылка '%s' имеет отличный от оригинального массива размер");
//2025
codedMessages.put("R203", "Нельзя удалить приватную переменную '%s' - она используется в вызове функции на строке %d");
//3002
//3001
codedMessages.put("R108", "Добавлена across-зависимость к массиву '%s' в цикле.");

View File

@@ -62,7 +62,7 @@ public class Visualiser extends Component {
//http://www.seostella.com/ru/article/2012/02/05/formatirovanie-daty-v-java.html
@Override
public void GetVersionInfo() {
version = 1022;
version = 1023;
String pattern = "MMM dd yyyy HH:mm:ss";
DateFormat df = new SimpleDateFormat(pattern, Locale.ENGLISH);
date_text = df.format(getClassBuildTime());

View File

@@ -59,4 +59,11 @@ public class SapforTask extends DBObject {
test_description = t.test_description;
state = t.state;
}
public String getVersionsChain(){
Vector<String> versionsLines = new Vector<>();
for (int i=1; i< versions.size(); ++i ){
versionsLines.add(versions.get(i).description);
}
return String.join("", versionsLines);
}
}

View File

@@ -1,11 +1,15 @@
package TestingSystem;
import Common.Constants;
import Common.Global;
import Common.Utils.Utils;
import GlobalData.Machine.Machine;
import GlobalData.Tasks.TaskState;
import GlobalData.User.User;
import Repository.EmailMessage;
import Repository.Server.ServerCode;
import Repository.Server.ServerExchangeUnit_2021;
import SapforTestingSystem.Json.SapforTasksResults_json;
import SapforTestingSystem.SapforTask.SapforTask;
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage;
import SapforTestingSystem.SapforTasksPackageSupervisor.SapforTasksPackageSupervisor;
import TestingSystem.Tasks.TestCompilationTask;
@@ -238,32 +242,55 @@ public class TestingPlanner {
public String PrintSapforPackageResults() throws Exception {
String result = "";
Vector<String> result_lines = new Vector<>();
/*
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, SapforTasksPackage_json.class);
result = String.join("\n", result_lines);
SapforTasksResults_json results_json = (SapforTasksResults_json) Utils.jsonFromFile(results_json_file, SapforTasksResults_json.class);
result_lines.add("");
LinkedHashMap<String, Vector<SapforTask>> tasksByConfigurations = new LinkedHashMap<>();
result_lines.add("Всего задач: " + results_json.tasks.size());
LinkedHashMap<TaskState, LinkedHashMap<String, Vector<SapforTask>>> sortedTasks = new LinkedHashMap<>();
//рассортировать задачи по конфигурациям.
for (TaskState state : TaskState.values()) {
LinkedHashMap<String, Vector<SapforTask>> tasksByFlags = new LinkedHashMap<>();
sortedTasks.put(state, tasksByFlags);
//--
for (SapforTask task : results_json.tasks) {
task.
//--
if (tasksByConfigurations.containsKey(task.sapfor_configuration_id)) {
tasksByConfigurations.get(task.sapfor_configuration_id).add(task);
if (task.state.equals(state)) {
Vector<SapforTask> tasks = null;
if (tasksByFlags.containsKey(task.flags)) {
tasks = tasksByFlags.get(task.flags);
} else {
Vector<SapforTask> tasks_ = new Vector<>();
tasks_.add(task);
tasksByConfigurations.put(task.sapfor_configuration_id, tasks_);
tasks = new Vector<>();
tasksByFlags.put(task.flags, tasks);
}
tasks.add(task);
}
}
}
//--
for (TaskState state : sortedTasks.keySet()) {
LinkedHashMap<String, Vector<SapforTask>> tasksByFlags = sortedTasks.get(state);
if (!tasksByFlags.isEmpty()) {
int count = 0;
if (state.equals(TaskState.DoneWithErrors)) {
Vector<String> tasksLines = 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());
}
//распечатать непрошедшие тесты.
for (String configuration_id: tasksByConfigurations.keySet()){
result_lines.add(state.getDescription() + " :" + count);
result_lines.addAll(tasksLines);
} else {
for (String flags : tasksByFlags.keySet()) {
count += tasksByFlags.get(flags).size();
}
result_lines.add(state.getDescription() + " :" + count);
}
}
*/
}
result = String.join("\n", result_lines);
}
return result;
}
}