процесс рефакторинга. Так как нужно запускать тесты на многих флагах, понадобилось внести дополнительные объекты.
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Global;
|
||||
import Common.Utils.Utils;
|
||||
import SapforTestingSystem.SapforTask.SapforTask_2023;
|
||||
import SapforTestingSystem.SapforTask.SapforTask;
|
||||
import SapforTestingSystem.Json.ScenarioResults_json;
|
||||
import Visual_DVM_2021.Passes.Pass_2021;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
@@ -30,7 +30,7 @@ public class AnalyseSapforPackageResults extends Pass_2021<ScenarioResults_json>
|
||||
}
|
||||
@Override
|
||||
protected void body() throws Exception {
|
||||
for (SapforTask_2023 task: target.tasks) {
|
||||
for (SapforTask task: target.tasks) {
|
||||
task.id=Global.db.IncSapforMaxTaskId();
|
||||
Global.db.Insert(task);
|
||||
}
|
||||
|
||||
@@ -3,14 +3,11 @@ import Common.Current;
|
||||
import Common.Database.Database;
|
||||
import Common.Global;
|
||||
import Common.UI.UI;
|
||||
import Common.Utils.Utils;
|
||||
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage_2023;
|
||||
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage;
|
||||
import Visual_DVM_2021.Passes.DeleteObjectPass;
|
||||
|
||||
import java.io.File;
|
||||
public class DeleteSapforTasksPackage extends DeleteObjectPass<SapforTasksPackage_2023> {
|
||||
public class DeleteSapforTasksPackage extends DeleteObjectPass<SapforTasksPackage> {
|
||||
public DeleteSapforTasksPackage() {
|
||||
super(SapforTasksPackage_2023.class);
|
||||
super(SapforTasksPackage.class);
|
||||
}
|
||||
@Override
|
||||
protected Database getDb() {
|
||||
@@ -25,6 +22,6 @@ public class DeleteSapforTasksPackage extends DeleteObjectPass<SapforTasksPackag
|
||||
@Override
|
||||
protected void body() throws Exception {
|
||||
super.body();
|
||||
Utils.delete_with_check(new File(target.workspace));
|
||||
// Utils.delete_with_check(new File(target.workspace));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +1,12 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Current;
|
||||
import Common.Global;
|
||||
import Common.Utils.Utils;
|
||||
import ProjectData.Files.DBProjectFile;
|
||||
import ProjectData.LanguageName;
|
||||
import ProjectData.Messages.Errors.MessageError;
|
||||
import ProjectData.Project.db_project_info;
|
||||
import SapforTestingSystem.SapforTask.SapforTaskResult;
|
||||
import SapforTestingSystem.SapforTask.SapforTask_2023;
|
||||
import SapforTestingSystem.Json.SapforVersion_json;
|
||||
import SapforTestingSystem.SapforTask.SapforTaskResult;
|
||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||
import Visual_DVM_2021.Passes.Pass_2021;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
@@ -204,9 +202,10 @@ public class OpenSapforTest extends Pass_2021<SapforTaskResult> {
|
||||
}
|
||||
@Override
|
||||
protected void body() throws Exception {
|
||||
/*
|
||||
File resultsFile = Paths.get(target.sapforTasksPackage.workspace, target.task.test_description, db_project_info.data, "results.txt").toFile();
|
||||
String resultsText = FileUtils.readFileToString(resultsFile);
|
||||
SapforTask_2023 savedTask = Utils.gson.fromJson(resultsText, SapforTask_2023.class);
|
||||
SapforTask savedTask = Utils.gson.fromJson(resultsText, SapforTask.class);
|
||||
//--->>
|
||||
if (target.task.versions_tree_built == 0) {
|
||||
ShowMessage1("Построение дерева версий..");
|
||||
@@ -221,6 +220,7 @@ public class OpenSapforTest extends Pass_2021<SapforTaskResult> {
|
||||
last_version = savedTask.variants.lastElement().version;
|
||||
} else if (!savedTask.versions.isEmpty())
|
||||
last_version = savedTask.versions.lastElement().version;
|
||||
*/
|
||||
}
|
||||
@Override
|
||||
protected boolean validate() {
|
||||
|
||||
@@ -2,7 +2,7 @@ package Visual_DVM_2021.Passes.All;
|
||||
import Common.Utils.Utils;
|
||||
import GlobalData.Tasks.TaskState;
|
||||
import ProjectData.Project.db_project_info;
|
||||
import SapforTestingSystem.SapforTask.SapforTask_2023;
|
||||
import SapforTestingSystem.SapforTask.SapforTask;
|
||||
import SapforTestingSystem.Json.SapforVersion_json;
|
||||
import SapforTestingSystem.Json.ScenarioResults_json;
|
||||
import SapforTestingSystem.Json.Scenario_json;
|
||||
@@ -35,7 +35,7 @@ public class PerformSapforTasksPackage extends Pass_2021<Scenario_json> {
|
||||
//--
|
||||
ScenarioResults_json results;
|
||||
//-
|
||||
SapforTask_2023 taskResult = null;
|
||||
SapforTask taskResult = null;
|
||||
//--
|
||||
@Override
|
||||
protected boolean canStart(Object... args) throws Exception {
|
||||
@@ -56,7 +56,7 @@ public class PerformSapforTasksPackage extends Pass_2021<Scenario_json> {
|
||||
//--
|
||||
parentTask = new File(packageWorkspace, test);
|
||||
//--
|
||||
taskResult = new SapforTask_2023();
|
||||
taskResult = new SapforTask();
|
||||
taskResult.test_description = test;
|
||||
taskResult.sapfortaskspackage_2023_id = Integer.parseInt(packageWorkspace.getName());
|
||||
taskResult.versions.add(new SapforVersion_json(parentTask.getAbsolutePath(), "исходная"));
|
||||
|
||||
@@ -3,12 +3,11 @@ import Common.Global;
|
||||
import Common.Utils.Utils;
|
||||
import GlobalData.Tasks.TaskState;
|
||||
import ProjectData.Project.db_project_info;
|
||||
import SapforTestingSystem.SapforTask.SapforTask_2023;
|
||||
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage_2023;
|
||||
import SapforTestingSystem.Json.SapforVersion_json;
|
||||
import SapforTestingSystem.Json.ScenarioResults_json;
|
||||
import SapforTestingSystem.Json.Scenario_json;
|
||||
import TestingSystem.TasksPackage.TasksPackageState;
|
||||
import SapforTestingSystem.SapforTask.SapforTask;
|
||||
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage;
|
||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||
import Visual_DVM_2021.Passes.PassException;
|
||||
import Visual_DVM_2021.Passes.Pass_2021;
|
||||
@@ -19,11 +18,10 @@ import java.nio.charset.Charset;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.Arrays;
|
||||
import java.util.Comparator;
|
||||
import java.util.Date;
|
||||
import java.util.Vector;
|
||||
//создание дерева версий одного теста по заданному сценарию.
|
||||
public class PerformScenario extends Pass_2021<Scenario_json> {
|
||||
SapforTasksPackage_2023 tasks_package;
|
||||
SapforTasksPackage tasks_package;
|
||||
File scenarioFile;
|
||||
//---
|
||||
File parentTask;
|
||||
@@ -40,7 +38,7 @@ public class PerformScenario extends Pass_2021<Scenario_json> {
|
||||
//--
|
||||
ScenarioResults_json results;
|
||||
//-
|
||||
SapforTask_2023 taskResult = null;
|
||||
SapforTask taskResult = null;
|
||||
//--
|
||||
@Override
|
||||
protected boolean needsAnimation() {
|
||||
@@ -50,9 +48,9 @@ public class PerformScenario extends Pass_2021<Scenario_json> {
|
||||
@Override
|
||||
protected boolean canStart(Object... args) throws Exception {
|
||||
//--
|
||||
tasks_package = (SapforTasksPackage_2023) args[0];
|
||||
tasks_package = (SapforTasksPackage) args[0];
|
||||
//---
|
||||
scenarioFile = new File(tasks_package.workspace, "scenario.txt");
|
||||
// scenarioFile = new File(tasks_package.workspace, "scenario.txt");
|
||||
String packed = FileUtils.readFileToString(scenarioFile, Charset.defaultCharset());
|
||||
target = Utils.gson.fromJson(packed, Scenario_json.class);
|
||||
//---
|
||||
@@ -60,7 +58,7 @@ public class PerformScenario extends Pass_2021<Scenario_json> {
|
||||
return true;
|
||||
}
|
||||
protected void saveResults() throws Exception {
|
||||
for (SapforTask_2023 task : results.tasks) {
|
||||
for (SapforTask task : results.tasks) {
|
||||
if (!task.versions.isEmpty()) {
|
||||
File taskResultFile = Paths.get(task.versions.firstElement().version, db_project_info.data, "results.txt").toFile();
|
||||
FileUtils.write(taskResultFile, Utils.jsonToPrettyFormat(Utils.gson.toJson(task)));
|
||||
@@ -68,18 +66,15 @@ public class PerformScenario extends Pass_2021<Scenario_json> {
|
||||
task.id = Global.db.IncSapforMaxTaskId();
|
||||
Global.db.Insert(task);
|
||||
}
|
||||
tasks_package.ChangeDate = new Date().getTime();
|
||||
tasks_package.state = TasksPackageState.Done;
|
||||
Global.db.Update(tasks_package);
|
||||
}
|
||||
@Override
|
||||
protected void body() throws Exception {
|
||||
for (String test : target.tests) {
|
||||
ShowMessage1(test);
|
||||
//--
|
||||
parentTask = new File(tasks_package.workspace, test);
|
||||
// parentTask = new File(tasks_package.workspace, test);
|
||||
//--
|
||||
taskResult = new SapforTask_2023();
|
||||
taskResult = new SapforTask();
|
||||
taskResult.test_description = test;
|
||||
taskResult.sapfortaskspackage_2023_id = tasks_package.id;
|
||||
taskResult.versions.add(new SapforVersion_json(parentTask.getAbsolutePath(), "исходная"));
|
||||
|
||||
@@ -1,32 +1,24 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Current;
|
||||
import Common.Global;
|
||||
import Common.GlobalProperties;
|
||||
import Common.UI.UI;
|
||||
import Common.Utils.Utils;
|
||||
import GlobalData.Settings.SettingName;
|
||||
import ProjectData.LanguageName;
|
||||
import Repository.Server.ServerCode;
|
||||
import Repository.Server.ServerExchangeUnit_2021;
|
||||
import TestingSystem.Group.Group;
|
||||
import SapforTestingSystem.SapforConfiguration.SapforConfiguration;
|
||||
import SapforTestingSystem.SapforConfiguration.SapforConfigurationInterface;
|
||||
import SapforTestingSystem.SapforConfigurationCommand.SapforConfigurationCommand;
|
||||
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage_2023;
|
||||
import SapforTestingSystem.Json.Scenario_json;
|
||||
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage;
|
||||
import TestingSystem.Group.Group;
|
||||
import TestingSystem.Test.Test;
|
||||
import TestingSystem.Test.TestInterface;
|
||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||
import Visual_DVM_2021.Passes.Pass_2021;
|
||||
import Visual_DVM_2021.Passes.TestingSystemPass;
|
||||
import org.apache.commons.io.FileUtils;
|
||||
|
||||
import java.io.File;
|
||||
import java.nio.file.Paths;
|
||||
import java.util.Date;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Vector;
|
||||
public class StartSapforTests extends Pass_2021<Vector<SapforTasksPackage_2023>> {
|
||||
public class StartSapforTests extends Pass_2021<Vector<SapforTasksPackage>> {
|
||||
protected int allTasksCount = 0;
|
||||
//--
|
||||
protected LinkedHashMap<String, Vector<String>> groupsTests = null;
|
||||
@@ -208,43 +200,43 @@ public class StartSapforTests extends Pass_2021<Vector<SapforTasksPackage_2023>>
|
||||
);
|
||||
}
|
||||
}
|
||||
/*
|
||||
ShowMessage1("Создание рабочих пространств...");
|
||||
for (SapforConfiguration configuration : Global.testingServer.db.sapforConfigurations.getCheckedItems()) {
|
||||
SapforTasksPackage_2023 sapforTasksPackage_2023 = new SapforTasksPackage_2023();
|
||||
SapforTasksPackage sapforTasksPackage_ = new SapforTasksPackage();
|
||||
//--
|
||||
sapforTasksPackage_2023.StartDate = new Date().getTime();
|
||||
sapforTasksPackage_2023.sapfor_version = String.valueOf(Current.getSapfor().version);
|
||||
sapforTasksPackage_2023.tasksCount = allTasksCount;
|
||||
sapforTasksPackage_2023.sapforconfiguration_id = configuration.id;
|
||||
sapforTasksPackage_2023.flags = SapforConfigurationInterface.getFlags(configuration);
|
||||
sapforTasksPackage_2023.passesNames = SapforConfigurationInterface.getTransformationsNames(configuration);
|
||||
sapforTasksPackage_.sapfor_version = String.valueOf(Current.getSapfor().version);
|
||||
sapforTasksPackage_.tasksCount = allTasksCount;
|
||||
sapforTasksPackage_.sapforconfiguration_id = configuration.id;
|
||||
sapforTasksPackage_.flags = SapforConfigurationInterface.getFlags(configuration);
|
||||
sapforTasksPackage_.passesNames = SapforConfigurationInterface.getTransformationsNames(configuration);
|
||||
//--
|
||||
sapforTasksPackage_2023.STATIC_SHADOW_ANALYSIS = configuration.STATIC_SHADOW_ANALYSIS;//"Оптимизация теневых обменов"; -sh
|
||||
sapforTasksPackage_2023.FREE_FORM = configuration.FREE_FORM;
|
||||
sapforTasksPackage_2023.MAX_SHADOW_WIDTH = configuration.MAX_SHADOW_WIDTH; // "Максимальный размер теневых граней"; (%) -shwidth значение поля
|
||||
sapforTasksPackage_2023.KEEP_SPF_DIRECTIVES = configuration.KEEP_SPF_DIRECTIVES; //"Сохранять SPF директивы при построении параллельных вариантов"; -keepSPF
|
||||
sapforTasksPackage_2023.KEEP_DVM_DIRECTIVES = configuration.KEEP_DVM_DIRECTIVES;// "Учитывать DVM директивы"; -keepDVM
|
||||
sapforTasksPackage_.STATIC_SHADOW_ANALYSIS = configuration.STATIC_SHADOW_ANALYSIS;//"Оптимизация теневых обменов"; -sh
|
||||
sapforTasksPackage_.FREE_FORM = configuration.FREE_FORM;
|
||||
sapforTasksPackage_.MAX_SHADOW_WIDTH = configuration.MAX_SHADOW_WIDTH; // "Максимальный размер теневых граней"; (%) -shwidth значение поля
|
||||
sapforTasksPackage_.KEEP_SPF_DIRECTIVES = configuration.KEEP_SPF_DIRECTIVES; //"Сохранять SPF директивы при построении параллельных вариантов"; -keepSPF
|
||||
sapforTasksPackage_.KEEP_DVM_DIRECTIVES = configuration.KEEP_DVM_DIRECTIVES;// "Учитывать DVM директивы"; -keepDVM
|
||||
//--
|
||||
Global.db.Insert(sapforTasksPackage_2023);
|
||||
sapforTasksPackage_2023.workspace = Paths.get(
|
||||
Global.db.Insert(sapforTasksPackage_);
|
||||
sapforTasksPackage_.workspace = Paths.get(
|
||||
Global.db.settings.get(SettingName.Workspace).Value,
|
||||
String.valueOf(sapforTasksPackage_2023.id)
|
||||
String.valueOf(sapforTasksPackage_.id)
|
||||
).toFile().getAbsolutePath();
|
||||
//---
|
||||
Utils.CheckAndCleanDirectory(new File(sapforTasksPackage_2023.workspace));
|
||||
sapfor = new File(sapforTasksPackage_2023.workspace, "SAPFOR_F.exe"); //развилка на линукс
|
||||
Utils.CheckAndCleanDirectory(new File(sapforTasksPackage_.workspace));
|
||||
sapfor = new File(sapforTasksPackage_.workspace, "SAPFOR_F.exe"); //развилка на линукс
|
||||
ShowMessage2("Копирование SAPFOR");
|
||||
FileUtils.copyFile(Current.getSapfor().getFile(), sapfor);
|
||||
ShowMessage2("Копирование визуализатора");
|
||||
File visualiser = new File(sapforTasksPackage_2023.workspace, "VisualSapfor.jar");
|
||||
File visualiser = new File(sapforTasksPackage_.workspace, "VisualSapfor.jar");
|
||||
FileUtils.copyFile(Global.visualiser.getFile(), visualiser);
|
||||
GlobalProperties properties = new GlobalProperties();
|
||||
properties.Mode = Current.Mode.Package;
|
||||
File propertiesFile = new File(sapforTasksPackage_2023.workspace, "properties");
|
||||
File propertiesFile = new File(sapforTasksPackage_.workspace, "properties");
|
||||
FileUtils.write(propertiesFile, Utils.jsonToPrettyFormat(Utils.gson.toJson(properties)));
|
||||
ShowMessage2("");
|
||||
//-
|
||||
File scenarioFile = new File(sapforTasksPackage_2023.workspace, "scenario.txt");
|
||||
File scenarioFile = new File(sapforTasksPackage_.workspace, "scenario.txt");
|
||||
Scenario_json scenario_json = new Scenario_json();
|
||||
scenario_json.tests.addAll(testsNames);
|
||||
//создать папки для сценариев.
|
||||
@@ -256,7 +248,7 @@ public class StartSapforTests extends Pass_2021<Vector<SapforTasksPackage_2023>>
|
||||
Test test = Global.testingServer.db.tests.get(testId);
|
||||
ShowMessage2(test.description);
|
||||
//--
|
||||
File taskWorkspace = new File(sapforTasksPackage_2023.workspace, test.description);
|
||||
File taskWorkspace = new File(sapforTasksPackage_.workspace, test.description);
|
||||
Utils.CheckAndCleanDirectory(taskWorkspace);
|
||||
//--
|
||||
Utils.copyDirectory(new File(Global.TestsDirectory, test.id), taskWorkspace);
|
||||
@@ -269,10 +261,11 @@ public class StartSapforTests extends Pass_2021<Vector<SapforTasksPackage_2023>>
|
||||
//---
|
||||
FileUtils.write(scenarioFile, Utils.jsonToPrettyFormat(Utils.gson.toJson(scenario_json)));
|
||||
//---
|
||||
sapforTasksPackage_2023.testsNames = String.join(";", testsNames);
|
||||
Global.db.Update(sapforTasksPackage_2023);
|
||||
target.add(sapforTasksPackage_2023);
|
||||
sapforTasksPackage_.testsNames = String.join(";", testsNames);
|
||||
Global.db.Update(sapforTasksPackage_);
|
||||
target.add(sapforTasksPackage_);
|
||||
}
|
||||
*/
|
||||
//--
|
||||
}
|
||||
@Override
|
||||
@@ -281,13 +274,14 @@ public class StartSapforTests extends Pass_2021<Vector<SapforTasksPackage_2023>>
|
||||
}
|
||||
@Override
|
||||
protected void performDone() throws Exception {
|
||||
|
||||
/*
|
||||
//тут должен быть планировщик и очередь пакетов. отдельной нитью.
|
||||
for (SapforTasksPackage_2023 sapforTasksPackage_2023 : target) {
|
||||
File workspaceFile = new File(sapforTasksPackage_2023.workspace);
|
||||
// Utils.startScript(workspaceFile, workspaceFile, "start", "java -jar VisualSapfor.jar");
|
||||
Utils.startScript_(workspaceFile, workspaceFile, "start", "java -jar VisualSapfor.jar");
|
||||
}
|
||||
*/
|
||||
}
|
||||
@Override
|
||||
protected void showDone() throws Exception {
|
||||
|
||||
Reference in New Issue
Block a user