обновленный json для сценария тестирования

This commit is contained in:
2023-09-29 00:45:45 +03:00
parent 7b0e56f5b3
commit 12898b07bb
9 changed files with 55 additions and 42 deletions

View File

@@ -2,7 +2,7 @@ package Common.ModesSupervisors;
import Common.Global;
import Common.Utils.InterruptThread;
import Common.Utils.Utils;
import SapforTestingSystem.Json.Scenario_json;
import SapforTestingSystem.Json.SapforScenario_json;
import SapforTestingSystem.SapforTest.SapforTest;
import org.apache.commons.io.FileUtils;
@@ -21,7 +21,7 @@ public class PackageModeSupervisor {
//--->>
int kernels = 4;
//--->>
Scenario_json scenario;
SapforScenario_json scenario;
//--->>
File packageWorkspace;
//--->>
@@ -38,7 +38,7 @@ public class PackageModeSupervisor {
scenarioFile = new File(packageWorkspace, "scenario.txt");
sapfor_drv = new File(packageWorkspace, "SAPFOR_F.exe");
String packed = FileUtils.readFileToString(scenarioFile, Charset.defaultCharset());
scenario = Utils.gson.fromJson(packed, Scenario_json.class);
scenario = Utils.gson.fromJson(packed, SapforScenario_json.class);
//--->>
for (String test : scenario.tests) {
allTests.put(test, new SapforTest(Global.Home, test));

View File

@@ -1,15 +1,14 @@
package SapforTestingSystem.Json;
import Visual_DVM_2021.Passes.PassCode_2021;
import com.google.gson.annotations.Expose;
import javafx.util.Pair;
import java.util.List;
import java.util.Vector;
public class Scenario_json {
public class SapforPackage_json {
@Expose
public String id = "";
@Expose
public String flags = "";
@Expose
public List<PassCode_2021> codes = new Vector<>();
@Expose
public List<String> tests = new Vector<>();
@Expose
public List<Pair<String,String>> packages= new Vector<>(); //пары пакеты + флаги
}

View File

@@ -0,0 +1,11 @@
package SapforTestingSystem.Json;
import com.google.gson.annotations.Expose;
import java.util.List;
import java.util.Vector;
public class SapforScenario_json {
@Expose
public List<String> tests = new Vector<>();
@Expose
public List<SapforPackage_json> packages= new Vector<>(); //пары пакеты + флаги
}

View File

@@ -29,15 +29,6 @@ public class SapforConfigurationInterface {
}
return res;
}
public static String getTransformationsNames(SapforConfiguration object) {
Vector<String> res = new Vector<>();
for (SapforConfigurationCommand command : Global.testingServer.db.sapforConfigurationCommands.Data.values()) {
if (command.sapforconfiguration_id.equals(object.id)) {
res.add(command.passCode.getDescription());
}
}
return String.join(";", res);
}
//todo вывести.
public static boolean validateCommands(SapforConfiguration sapforConfiguration, TextLog log) {
//1. получить список всех команд.

View File

@@ -3,7 +3,7 @@ import Common.Utils.Utils;
import ProjectData.Project.db_project_info;
import SapforTestingSystem.Json.SapforVersion_json;
import SapforTestingSystem.Json.ScenarioResults_json;
import SapforTestingSystem.Json.Scenario_json;
import SapforTestingSystem.Json.SapforScenario_json;
import SapforTestingSystem.SapforTask.SapforTask;
import Visual_DVM_2021.Passes.PassCode_2021;
import Visual_DVM_2021.Passes.PassException;
@@ -13,7 +13,7 @@ import org.apache.commons.io.FileUtils;
import java.io.File;
import java.nio.charset.Charset;
import java.util.Vector;
public class PerformSapforTasksPackage extends Pass_2021<Scenario_json> {
public class PerformSapforTasksPackage extends Pass_2021<SapforScenario_json> {
File packageWorkspace;
File sapfor_drv;
File scenarioFile;
@@ -42,7 +42,7 @@ public class PerformSapforTasksPackage extends Pass_2021<Scenario_json> {
scenarioFile = new File(packageWorkspace, "scenario.txt");
sapfor_drv = new File(packageWorkspace, "SAPFOR_F.exe");
String packed = FileUtils.readFileToString(scenarioFile, Charset.defaultCharset());
target = Utils.gson.fromJson(packed, Scenario_json.class);
target = Utils.gson.fromJson(packed, SapforScenario_json.class);
//---
results = new ScenarioResults_json();
return true;
@@ -58,6 +58,7 @@ public class PerformSapforTasksPackage extends Pass_2021<Scenario_json> {
taskResult.sapfortaskspackage_2023_id = Integer.parseInt(packageWorkspace.getName());
taskResult.versions.add(new SapforVersion_json(parentTask.getAbsolutePath(), "исходная"));
//--
/*
for (PassCode_2021 code : target.codes) {
if (parse()) {
if (code.equals(PassCode_2021.CreateParallelVariants))
@@ -67,6 +68,7 @@ public class PerformSapforTasksPackage extends Pass_2021<Scenario_json> {
} else
break;
}
*/
//---
results.tasks.add(taskResult);
}

View File

@@ -4,7 +4,7 @@ import Common.Utils.Utils;
import ProjectData.Project.db_project_info;
import SapforTestingSystem.Json.SapforVersion_json;
import SapforTestingSystem.Json.ScenarioResults_json;
import SapforTestingSystem.Json.Scenario_json;
import SapforTestingSystem.Json.SapforScenario_json;
import SapforTestingSystem.SapforTask.SapforTask;
import SapforTestingSystem.SapforTasksPackage.SapforTasksPackage;
import Visual_DVM_2021.Passes.PassCode_2021;
@@ -17,7 +17,7 @@ import java.nio.charset.Charset;
import java.nio.file.Paths;
import java.util.Vector;
//создание дерева версий одного теста по заданному сценарию.
public class PerformScenario extends Pass_2021<Scenario_json> {
public class PerformScenario extends Pass_2021<SapforScenario_json> {
SapforTasksPackage tasks_package;
File scenarioFile;
//---
@@ -49,7 +49,7 @@ public class PerformScenario extends Pass_2021<Scenario_json> {
//---
// scenarioFile = new File(tasks_package.workspace, "scenario.txt");
String packed = FileUtils.readFileToString(scenarioFile, Charset.defaultCharset());
target = Utils.gson.fromJson(packed, Scenario_json.class);
target = Utils.gson.fromJson(packed, SapforScenario_json.class);
//---
results = new ScenarioResults_json();
return true;
@@ -76,6 +76,7 @@ public class PerformScenario extends Pass_2021<Scenario_json> {
taskResult.sapfortaskspackage_2023_id = tasks_package.id;
taskResult.versions.add(new SapforVersion_json(parentTask.getAbsolutePath(), "исходная"));
//--
/*
for (PassCode_2021 code : target.codes) {
ShowMessage2("Синтаксический анализ");
if (parse()) {
@@ -87,6 +88,7 @@ public class PerformScenario extends Pass_2021<Scenario_json> {
} else
break;
}
*/
//---
results.tasks.add(taskResult);
}

View File

@@ -8,6 +8,8 @@ import GlobalData.Settings.SettingName;
import ProjectData.LanguageName;
import Repository.Server.ServerCode;
import Repository.Server.ServerExchangeUnit_2021;
import SapforTestingSystem.Json.SapforPackage_json;
import SapforTestingSystem.Json.SapforScenario_json;
import SapforTestingSystem.SapforConfiguration.SapforConfiguration;
import SapforTestingSystem.SapforConfiguration.SapforConfigurationInterface;
import SapforTestingSystem.SapforConfigurationCommand.SapforConfigurationCommand;
@@ -25,6 +27,7 @@ import java.io.File;
import java.nio.file.Paths;
import java.util.LinkedHashMap;
import java.util.Vector;
import java.util.stream.Collectors;
public class StartSapforTests extends Pass_2021<SapforScenario> {
protected int allTasksCount = 0;
//--
@@ -225,15 +228,22 @@ public class StartSapforTests extends Pass_2021<SapforScenario> {
File propertiesFile = new File(target.workspace, "properties");
FileUtils.write(propertiesFile, Utils.jsonToPrettyFormat(Utils.gson.toJson(properties)));
//----
File scenarioFile = new File(target.workspace, "scenario.txt");
SapforScenario_json scenario_json = new SapforScenario_json();
scenario_json.tests.addAll(allTests.keySet());
//scenario_json.flags = SapforConfigurationInterface.getFlags(configuration);
//----
Global.db.Update(target);
ShowMessage1("Создание рабочих пространств...");
for (SapforConfiguration configuration : Global.testingServer.db.sapforConfigurations.getCheckedItems()) {
SapforTasksPackage sapforTasksPackage = new SapforTasksPackage();
Vector<PassCode_2021> codes = SapforConfigurationInterface.getPassCodes(configuration);
Vector<String> passesNames = codes.stream().map(PassCode_2021::getDescription).collect(Collectors.toCollection(Vector::new));
//--
sapforTasksPackage.sapforscenario_id = target.id;
sapforTasksPackage.sapforconfiguration_id = configuration.id;
sapforTasksPackage.flags = SapforConfigurationInterface.getFlags(configuration);
sapforTasksPackage.passesNames = SapforConfigurationInterface.getTransformationsNames(configuration);
sapforTasksPackage.passesNames = String.join(";", passesNames);
//--
Global.db.Insert(sapforTasksPackage);
sapforTasksPackage.workspace = Paths.get(
@@ -243,15 +253,6 @@ public class StartSapforTests extends Pass_2021<SapforScenario> {
).toFile().getAbsolutePath();
//---
Utils.CheckAndCleanDirectory(new File(sapforTasksPackage.workspace));
ShowMessage2("");
//-
/*
File scenarioFile = new File(sapforTasksPackage.workspace, "scenario.txt");
Scenario_json scenario_json = new Scenario_json();
scenario_json.tests.addAll(testsNames);
*/
//---
for (Vector<String> testIds : groupsTests.values()) {
for (String testId : testIds) {
@@ -264,15 +265,17 @@ public class StartSapforTests extends Pass_2021<SapforScenario> {
Utils.copyDirectory(new File(Global.TestsDirectory, test.id), taskWorkspace);
}
}
//---
//scenario_json.flags = SapforConfigurationInterface.getFlags(configuration);
//scenario_json.codes.addAll(codes);
//---
//FileUtils.write(scenarioFile, Utils.jsonToPrettyFormat(Utils.gson.toJson(scenario_json)));
//---
Global.db.Update(sapforTasksPackage);
//--->>
SapforPackage_json package_json = new SapforPackage_json();
package_json.id = String.valueOf(sapforTasksPackage.id);
package_json.flags = sapforTasksPackage.flags;
package_json.codes.addAll(codes);
//--->>
scenario_json.packages.add(package_json);
}
//--
FileUtils.write(scenarioFile, Utils.jsonToPrettyFormat(Utils.gson.toJson(scenario_json)));
}
@Override
protected void showFinish() throws Exception {