промежуточный. тестирую новую версий конфигураций
This commit is contained in:
20
.idea/workspace.xml
generated
20
.idea/workspace.xml
generated
@@ -7,12 +7,24 @@
|
||||
</component>
|
||||
<component name="ChangeListManager">
|
||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
||||
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SaveCurrentDVMConfiguration.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/ShowCurrentDVMConfigurationTests.java" afterDir="false" />
|
||||
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/StartCurrentDVMConfiguration.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Common/Current.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Current.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Common/UI/UI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/UI.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Common/Utils/Utils.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Utils/Utils.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Configuration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Configuration.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TestingPackage/TestingPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestingPackage/TestingPackage.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/RemoteDVMTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/RemoteDVMTestingPlanner.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/AbortTestingPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/AbortTestingPackage.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SaveCurrentDVMPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SaveCurrentDVMPackage.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/StartDVMPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/StartDVMPackage.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TestingServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestingServer.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/TestsDatabase.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestsDatabase.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/Configuration/ConfigurationDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/Configuration/DVMConfigurationDBTable.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/Configuration/ConfigurationsMenuBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/Configuration/DVMConfigurationsMenuBar.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/Configuration/DVMConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/Configuration/DVMConfiguration.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/DVMPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/DVMPackage.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java" afterDir="false" />
|
||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.java" afterDir="false" />
|
||||
</list>
|
||||
<option name="SHOW_DIALOG" value="false" />
|
||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
"SMTPHost": "smtp.mail.ru",
|
||||
"SMTPPort": 465,
|
||||
"MailSocketPort": 465,
|
||||
"collapseCredentials": true,
|
||||
"collapseCredentials": false,
|
||||
"collapseFileGraphs": false,
|
||||
"collapseFileMessages": false,
|
||||
"collapseProjectTrees": false,
|
||||
|
||||
@@ -86,7 +86,7 @@ public enum Current {
|
||||
Scenario,
|
||||
ScenarioCommand,
|
||||
//-
|
||||
Configuration,
|
||||
DVMConfiguration,
|
||||
Group,
|
||||
//-
|
||||
DVMParameterValue,
|
||||
@@ -224,10 +224,10 @@ public enum Current {
|
||||
}
|
||||
//--
|
||||
public static boolean HasConfiguration() {
|
||||
return get(Current.Configuration) != null;
|
||||
return get(Current.DVMConfiguration) != null;
|
||||
}
|
||||
public static DVMConfiguration getConfiguration() {
|
||||
return (DVMConfiguration) get(Current.Configuration);
|
||||
public static DVMConfiguration getDVMConfiguration() {
|
||||
return (DVMConfiguration) get(Current.DVMConfiguration);
|
||||
}
|
||||
public static SapforConfiguration getSapforConfiguration() {
|
||||
return (TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration) get(Current.SapforConfiguration);
|
||||
@@ -381,7 +381,7 @@ public enum Current {
|
||||
return "Пакет тестирования SAPFOR";
|
||||
case DVMPackage:
|
||||
return "Пакет тестирования DVM";
|
||||
case Configuration:
|
||||
case DVMConfiguration:
|
||||
return "Конфигурация тестирования";
|
||||
case ServerSapfor:
|
||||
return "тестовая версия SAPFOR";
|
||||
|
||||
@@ -66,8 +66,8 @@ import TestingSystem.Common.Group.GroupsMenuBar;
|
||||
import TestingSystem.Common.Test.TestDBTable;
|
||||
import TestingSystem.Common.Test.TestsMenuBar;
|
||||
import TestingSystem.Common.TestingBar;
|
||||
import TestingSystem.DVM.Configuration.ConfigurationDBTable;
|
||||
import TestingSystem.DVM.Configuration.ConfigurationsMenuBar;
|
||||
import TestingSystem.DVM.Configuration.DVMConfigurationDBTable;
|
||||
import TestingSystem.DVM.Configuration.DVMConfigurationsMenuBar;
|
||||
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
|
||||
import TestingSystem.DVM.DVMPackage.DVMPackagesBar;
|
||||
import TestingSystem.DVM.DVMTasks.DVMRunTasksBar;
|
||||
@@ -101,7 +101,6 @@ import javax.swing.text.Highlighter;
|
||||
import javax.swing.tree.TreeCellRenderer;
|
||||
import java.awt.*;
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Locale;
|
||||
import java.util.Stack;
|
||||
import java.util.Vector;
|
||||
|
||||
@@ -226,7 +225,7 @@ public class UI {
|
||||
//---------------------------------------------------->>
|
||||
menuBars.put(GroupsDBTable.class, new GroupsMenuBar());
|
||||
menuBars.put(TestDBTable.class, new TestsMenuBar());
|
||||
menuBars.put(ConfigurationDBTable.class, new ConfigurationsMenuBar());
|
||||
menuBars.put(DVMConfigurationDBTable.class, new DVMConfigurationsMenuBar());
|
||||
menuBars.put(DVMPackageDBTable.class, new DVMPackagesBar());
|
||||
menuBars.put(SapforPackageDBTable.class, new SapforPackagesBar());
|
||||
menuBars.put(DVMRunTasksSet.class, new DVMRunTasksBar());
|
||||
|
||||
@@ -1289,9 +1289,9 @@ public class Utils {
|
||||
return dates.firstElement();
|
||||
}
|
||||
//------------------------------------------------------->>>
|
||||
public static Vector<Integer> unpack(String packed){
|
||||
public static Vector<Integer> unpackIntegers(String packed, String separator){
|
||||
Vector<Integer> ids = new Vector<>();
|
||||
String[] data = packed.split("\n");
|
||||
String[] data = packed.split(separator);
|
||||
if (data.length > 0) {
|
||||
for (String s: data) {
|
||||
if (!s.isEmpty())
|
||||
@@ -1300,9 +1300,9 @@ public class Utils {
|
||||
}
|
||||
return ids;
|
||||
}
|
||||
public static Vector<String> unpack_s(String packed){
|
||||
public static Vector<String> unpack_s(String packed, String separator){
|
||||
Vector<String> ids = new Vector<>();
|
||||
String[] data = packed.split("\n");
|
||||
String[] data = packed.split(separator);
|
||||
if (data.length > 0) {
|
||||
for (String s: data) {
|
||||
if (!s.isEmpty())
|
||||
|
||||
@@ -1,18 +1,113 @@
|
||||
package TestingSystem.Common;
|
||||
import Common.Database.DBObject;
|
||||
import Common.Database.riDBObject;
|
||||
import Common.Global;
|
||||
import Common.Utils.Utils;
|
||||
import TestingSystem.Common.Group.Group;
|
||||
import TestingSystem.Common.Test.Test;
|
||||
import com.sun.org.glassfish.gmbal.Description;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Vector;
|
||||
public class Configuration extends riDBObject {
|
||||
public int maxtime = 300; //лимит времени пуска задачи, входящей в пакет тестов
|
||||
//конфигурация = данные для пакета.
|
||||
|
||||
//группы
|
||||
//тесты
|
||||
//настройки тестируемого объекта
|
||||
//пакет = запуск конфигурация + тестируемый объект
|
||||
//---
|
||||
@Description("DEFAULT ''")
|
||||
public String packedGroupsIds = "";
|
||||
@Description("DEFAULT ''")
|
||||
public String packedTestsIds = "";
|
||||
//---
|
||||
@Description("DEFAULT ''")
|
||||
public String packedGroupsNames = "";
|
||||
//---
|
||||
@Description("DEFAULT 0")
|
||||
public int groupsCount = 0;
|
||||
@Description("DEFAULT 0")
|
||||
public int testsCount = 0;
|
||||
//--
|
||||
public int maxtime = 300;
|
||||
@Description("DEFAULT 0")
|
||||
public int autoTesting = 0;
|
||||
public String printAuto(){
|
||||
return autoTesting>0? "Да":"Нет";
|
||||
}
|
||||
//--
|
||||
public String getFlags(){return "";}
|
||||
public Vector<String> getFlagsArray(){return new Vector<>();}
|
||||
public Vector<String> getGroupsNamesArray(){
|
||||
return Utils.unpack_s(packedGroupsNames,"\n");
|
||||
}
|
||||
//--
|
||||
@Override
|
||||
public void SynchronizeFields(DBObject src) {
|
||||
super.SynchronizeFields(src);
|
||||
Configuration c = (Configuration) src;
|
||||
//--
|
||||
packedGroupsIds = c.packedGroupsIds;
|
||||
packedTestsIds = c.packedTestsIds;
|
||||
//-
|
||||
packedGroupsNames = c.packedGroupsNames;
|
||||
//-
|
||||
groupsCount = c.groupsCount;
|
||||
testsCount = c.testsCount;
|
||||
//-
|
||||
maxtime = c.maxtime;
|
||||
autoTesting= c.autoTesting;
|
||||
}
|
||||
//-
|
||||
public void saveGroups(Vector<Group> new_groups) {
|
||||
Vector<String> res = new Vector<>();
|
||||
Vector<String> names = new Vector<>();
|
||||
for (Group group : new_groups) {
|
||||
res.add(String.valueOf(group.id));
|
||||
names.add(group.description);
|
||||
}
|
||||
packedGroupsIds = String.join("\n", res);
|
||||
packedGroupsNames = String.join("\n", names);
|
||||
groupsCount = new_groups.size();
|
||||
}
|
||||
public void saveTests(Vector<Test> new_tests) {
|
||||
Vector<String> res = new Vector<>();
|
||||
for (Test test : new_tests)
|
||||
res.add(String.valueOf(test.id));
|
||||
packedTestsIds = String.join("\n", res);
|
||||
testsCount = new_tests.size();
|
||||
}
|
||||
//--
|
||||
public Vector<Group> getGroups() {
|
||||
Vector<Group> res = new Vector<>();
|
||||
for (int o_id : Utils.unpackIntegers(packedGroupsIds, "\n"))
|
||||
if (Global.testingServer.db.groups.containsKey(o_id))
|
||||
res.add(Global.testingServer.db.groups.get(o_id));
|
||||
return res;
|
||||
}
|
||||
public Vector<Test> getTests() {
|
||||
Vector<Test> res = new Vector<>();
|
||||
for (int o_id : Utils.unpackIntegers(packedTestsIds, "\n"))
|
||||
if (Global.testingServer.db.tests.containsKey(o_id))
|
||||
res.add(Global.testingServer.db.tests.get(o_id));
|
||||
return res;
|
||||
}
|
||||
public Vector<Test> getTests(Vector<Group> groups, LinkedHashMap<Integer, Vector<Test>> testByGroups) {
|
||||
Vector<Test> res = new Vector<>();
|
||||
for (int o_id : Utils.unpackIntegers(packedTestsIds, "\n"))
|
||||
if (Global.testingServer.db.tests.containsKey(o_id))
|
||||
res.add(Global.testingServer.db.tests.get(o_id));
|
||||
//--
|
||||
for (Group group: groups){
|
||||
Vector<Test> groupTests = new Vector<>();
|
||||
for (Test test:res){
|
||||
if (test.group_id==group.id)
|
||||
groupTests.add(test);
|
||||
}
|
||||
testByGroups.put(group.id, groupTests);
|
||||
}
|
||||
//--
|
||||
return res;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ public abstract class TestingPackage<J> extends riDBObject {
|
||||
public int groupsCount = 0;
|
||||
@Description("DEFAULT 0")
|
||||
public int testsCount = 0;
|
||||
|
||||
//--
|
||||
public TasksPackageState state = TasksPackageState.Draft;
|
||||
//--
|
||||
@@ -111,21 +112,21 @@ public abstract class TestingPackage<J> extends riDBObject {
|
||||
}
|
||||
public Vector<DVMConfiguration> getConfigurations() {
|
||||
Vector<DVMConfiguration> res = new Vector<>();
|
||||
for (int o_id : Utils.unpack(packedConfigurations))
|
||||
for (int o_id : Utils.unpackIntegers(packedConfigurations, "\n"))
|
||||
if (Global.testingServer.db.dvm_configurations.containsKey(o_id))
|
||||
res.add(Global.testingServer.db.dvm_configurations.get(o_id));
|
||||
return res;
|
||||
}
|
||||
public Vector<Group> getGroups() {
|
||||
Vector<Group> res = new Vector<>();
|
||||
for (int o_id : Utils.unpack(packedGroups))
|
||||
for (int o_id : Utils.unpackIntegers(packedGroups, "\n"))
|
||||
if (Global.testingServer.db.groups.containsKey(o_id))
|
||||
res.add(Global.testingServer.db.groups.get(o_id));
|
||||
return res;
|
||||
}
|
||||
public Vector<Test> getTests() {
|
||||
Vector<Test> res = new Vector<>();
|
||||
for (int o_id : Utils.unpack(packedTests))
|
||||
for (int o_id : Utils.unpackIntegers(packedTests, "\n"))
|
||||
if (Global.testingServer.db.tests.containsKey(o_id))
|
||||
res.add(Global.testingServer.db.tests.get(o_id));
|
||||
return res;
|
||||
|
||||
@@ -55,7 +55,6 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
);
|
||||
}
|
||||
}
|
||||
/*
|
||||
else if (object instanceof DVMPackage) {
|
||||
DVMPackage dvmPackage = (DVMPackage) object;
|
||||
//--
|
||||
@@ -65,11 +64,11 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
dvmPackage.package_json = null; // объект больше не нужен.
|
||||
//--
|
||||
}
|
||||
*/
|
||||
else if (object instanceof SapforPackage) {
|
||||
((SapforPackage) object).init();
|
||||
}
|
||||
}
|
||||
/*
|
||||
@Override
|
||||
protected void afterEditAction(DBObject object) throws Exception {
|
||||
if (object instanceof DVMPackage) {
|
||||
@@ -84,6 +83,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
||||
}
|
||||
}
|
||||
}
|
||||
*/
|
||||
@Override
|
||||
public void afterDeleteAction(DBObject object) throws Exception {
|
||||
if (object instanceof Test) {
|
||||
|
||||
@@ -11,7 +11,7 @@ import TestingSystem.Common.Group.GroupsDBTable;
|
||||
import TestingSystem.Common.Test.Test;
|
||||
import TestingSystem.Common.Test.TestDBTable;
|
||||
import TestingSystem.Common.TestingPackageToKill.TestingPackagesToKillDBTable;
|
||||
import TestingSystem.DVM.Configuration.ConfigurationDBTable;
|
||||
import TestingSystem.DVM.Configuration.DVMConfigurationDBTable;
|
||||
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
|
||||
import TestingSystem.DVM.DVMTasks.DVMRunTasksSet;
|
||||
@@ -34,7 +34,7 @@ import java.util.LinkedHashMap;
|
||||
import java.util.Vector;
|
||||
public class TestsDatabase extends SQLiteDatabase {
|
||||
|
||||
public ConfigurationDBTable dvm_configurations;
|
||||
public DVMConfigurationDBTable dvm_configurations;
|
||||
public TestDBTable tests;
|
||||
public GroupsDBTable groups;
|
||||
public DVMPackageDBTable dvmPackages;
|
||||
@@ -54,7 +54,7 @@ public class TestsDatabase extends SQLiteDatabase {
|
||||
}
|
||||
@Override
|
||||
protected void initAllTables() throws Exception {
|
||||
addTable(dvm_configurations = new ConfigurationDBTable());
|
||||
addTable(dvm_configurations = new DVMConfigurationDBTable());
|
||||
addTable(groups = new GroupsDBTable());
|
||||
addTable(tests = new TestDBTable());
|
||||
addTable(dvmPackages = new DVMPackageDBTable());
|
||||
|
||||
@@ -19,6 +19,8 @@ public class DVMConfiguration extends Configuration {
|
||||
public String environments="\n";
|
||||
public String usr_par = "";
|
||||
//-
|
||||
//под флагами понимается в данном случае набор цепочек флагов запакованных через энтер.
|
||||
// скорее всего будет лишь одна цепочка. с окружением похожая ситуация.
|
||||
@Override
|
||||
public String getFlags() {
|
||||
return flags;
|
||||
|
||||
@@ -8,21 +8,21 @@ import Common.UI.VisualiserStringList;
|
||||
import Common.UI.Windows.Dialog.DBObjectDialog;
|
||||
import Common.Utils.Utils;
|
||||
import TestingSystem.DVM.Configuration.UI.ConfigurationFields;
|
||||
public class ConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
||||
public ConfigurationDBTable() {
|
||||
public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
||||
public DVMConfigurationDBTable() {
|
||||
super(DVMConfiguration.class);
|
||||
}
|
||||
@Override
|
||||
public Current CurrentName() {
|
||||
return Current.Configuration;
|
||||
return Current.DVMConfiguration;
|
||||
}
|
||||
@Override
|
||||
public String getSingleDescription() {
|
||||
return "конфигурация тестирования";
|
||||
return "конфигурация тестирования DVM системы";
|
||||
}
|
||||
@Override
|
||||
public String getPluralDescription() {
|
||||
return "конфигурации";
|
||||
return "конфигурации тестирования DVM системы";
|
||||
}
|
||||
@Override
|
||||
protected DataSetControlForm createUI() {
|
||||
@@ -34,9 +34,10 @@ public class ConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
||||
@Override
|
||||
protected void AdditionalInitColumns() {
|
||||
// columns.get(0).setVisible(false);
|
||||
columns.get(4).setRenderer(TableRenderers.RendererMultiline);
|
||||
columns.get(5).setRenderer(TableRenderers.RendererMultiline);
|
||||
columns.get(12).setRenderer(TableRenderers.RendererMultiline);
|
||||
columns.get(7).setRenderer(TableRenderers.RendererMultiline);
|
||||
columns.get(8).setRenderer(TableRenderers.RendererMultiline);
|
||||
columns.get(15).setRenderer(TableRenderers.RendererMultiline);
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -45,6 +46,9 @@ public class ConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
||||
return new String[]{
|
||||
"имя",
|
||||
"автор",
|
||||
"авто",
|
||||
"группы",
|
||||
"тестов",
|
||||
"флаги",
|
||||
"окружение",
|
||||
"c_time",
|
||||
@@ -63,23 +67,31 @@ public class ConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
||||
return object.description;
|
||||
case 3:
|
||||
return object.sender_name;
|
||||
//---
|
||||
case 4:
|
||||
return Utils.unpackStrings(object.flags, true);
|
||||
return object.printAuto();
|
||||
case 5:
|
||||
return Utils.unpackStrings(object.environments, true);
|
||||
return object.getGroupsNamesArray();
|
||||
case 6:
|
||||
return object.c_maxtime;
|
||||
return object.testsCount;
|
||||
//---
|
||||
case 7:
|
||||
return object.cube;
|
||||
return Utils.unpackStrings(object.flags, true);
|
||||
case 8:
|
||||
return object.max_proc_count;
|
||||
return Utils.unpackStrings(object.environments, true);
|
||||
case 9:
|
||||
return object.min_dim_proc_count;
|
||||
return object.c_maxtime;
|
||||
case 10:
|
||||
return object.max_dim_proc_count;
|
||||
return object.cube;
|
||||
case 11:
|
||||
return object.maxtime;
|
||||
return object.max_proc_count;
|
||||
case 12:
|
||||
return object.min_dim_proc_count;
|
||||
case 13:
|
||||
return object.max_dim_proc_count;
|
||||
case 14:
|
||||
return object.maxtime;
|
||||
case 15:
|
||||
return Utils.unpackStrings(object.usr_par, true);
|
||||
default:
|
||||
return null;
|
||||
@@ -1,15 +1,19 @@
|
||||
package TestingSystem.DVM.Configuration;
|
||||
import Common.UI.Menus_2023.DataMenuBar;
|
||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||
public class ConfigurationsMenuBar extends DataMenuBar {
|
||||
public ConfigurationsMenuBar() {
|
||||
public class DVMConfigurationsMenuBar extends DataMenuBar {
|
||||
public DVMConfigurationsMenuBar() {
|
||||
super("конфигурации");
|
||||
addPasses(
|
||||
// PassCode_2021.StartTests,
|
||||
|
||||
PassCode_2021.PublishConfiguration,
|
||||
|
||||
PassCode_2021.EditConfiguration,
|
||||
PassCode_2021.DeleteConfiguration
|
||||
PassCode_2021.ShowCurrentDVMConfigurationTests,
|
||||
PassCode_2021.SaveCurrentDVMConfiguration,
|
||||
PassCode_2021.DeleteConfiguration,
|
||||
|
||||
PassCode_2021.StartCurrentDVMConfiguration
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -1,14 +1,15 @@
|
||||
package TestingSystem.DVM.DVMPackage;
|
||||
import Common.Constants;
|
||||
import Common.Current;
|
||||
import Common.Database.DBObject;
|
||||
import Common.Global;
|
||||
import GlobalData.Account.Account;
|
||||
import GlobalData.Compiler.Compiler;
|
||||
import GlobalData.Machine.Machine;
|
||||
import GlobalData.Machine.MachineType;
|
||||
import GlobalData.User.User;
|
||||
import TestingSystem.Common.Group.Group;
|
||||
import TestingSystem.Common.Test.Test;
|
||||
import TestingSystem.Common.TasksPackageState;
|
||||
import TestingSystem.Common.TestingPackage.TestingPackage;
|
||||
import TestingSystem.DVM.Configuration.DVMConfiguration;
|
||||
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
||||
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||
|
||||
@@ -26,6 +27,30 @@ public class DVMPackage extends TestingPackage<DVMPackage_json> {
|
||||
//---
|
||||
public DVMPackage() {
|
||||
}
|
||||
public DVMPackage(Account account, Machine machine, User user, Compiler compiler){
|
||||
id = Constants.Nan;
|
||||
//-
|
||||
sender_name = account.name;
|
||||
sender_address = account.email;
|
||||
//-
|
||||
machine_name = machine.name;
|
||||
machine_address = machine.address;
|
||||
machine_port = machine.port;
|
||||
//-
|
||||
user_name = user.login;
|
||||
user_password = user.password;
|
||||
user_workspace = user.workspace;
|
||||
//-
|
||||
drv = compiler.call_command;
|
||||
version = compiler.getVersionInfo();
|
||||
//-
|
||||
kernels = Global.properties.TestingKernels;
|
||||
needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
|
||||
//--
|
||||
package_json = new DVMPackage_json();
|
||||
//--
|
||||
state = TasksPackageState.Queued;
|
||||
}
|
||||
@Override
|
||||
public Class getJsonClass() {
|
||||
return DVMPackage_json.class;
|
||||
|
||||
@@ -43,6 +43,7 @@ public class SapforConfigurationDBTable extends iDBTable<SapforConfiguration> {
|
||||
"имя",
|
||||
"автор",
|
||||
"флаги"
|
||||
// "теневые грани, %"
|
||||
};
|
||||
}
|
||||
@Override
|
||||
@@ -54,6 +55,8 @@ public class SapforConfigurationDBTable extends iDBTable<SapforConfiguration> {
|
||||
return object.sender_name;
|
||||
case 4:
|
||||
return object.getFlags();
|
||||
// case 5:
|
||||
// return object.MAX_SHADOW_WIDTH;
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Current;
|
||||
import Common.Global;
|
||||
import TestingSystem.Common.Group.Group;
|
||||
import TestingSystem.Common.Test.Test;
|
||||
import TestingSystem.Common.TestingServer;
|
||||
import TestingSystem.DVM.Configuration.DVMConfiguration;
|
||||
import Visual_DVM_2021.Passes.Server.EditServerObject;
|
||||
|
||||
import java.util.Vector;
|
||||
public class SaveCurrentDVMConfiguration extends EditServerObject<TestingServer, DVMConfiguration> {
|
||||
Vector<Group> groups;
|
||||
Vector<Test> tests;
|
||||
//--
|
||||
Vector<String> groupsNames;
|
||||
//--
|
||||
public SaveCurrentDVMConfiguration() {
|
||||
super(Global.testingServer, DVMConfiguration.class);
|
||||
}
|
||||
@Override
|
||||
public String getIconPath() {
|
||||
return "/icons/Save.png";
|
||||
}
|
||||
@Override
|
||||
public String getButtonText() {
|
||||
return "";
|
||||
}
|
||||
@Override
|
||||
protected boolean canStart(Object... args) throws Exception {
|
||||
if (!Current.Check(Log, Current.DVMConfiguration)) return false;
|
||||
target = Current.getDVMConfiguration();
|
||||
//--
|
||||
groups = new Vector<>();
|
||||
tests = new Vector<>();
|
||||
//---
|
||||
groupsNames = new Vector<>();
|
||||
for (Group group : Global.testingServer.db.groups.getCheckedItems()) {
|
||||
groups.add(group);
|
||||
groupsNames.add(group.description);
|
||||
Vector<Test> groupTests = Global.testingServer.db.tests.getSelectedGroupTests(group);
|
||||
tests.addAll(groupTests);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
@Override
|
||||
protected void ServerAction() throws Exception {
|
||||
//занесение информации об участвующих группах конфигурациях и тестах
|
||||
target.saveGroups(groups);
|
||||
target.saveTests(tests);
|
||||
//--
|
||||
super.ServerAction();
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Current;
|
||||
import Common.Global;
|
||||
import TestingSystem.Common.Group.Group;
|
||||
import TestingSystem.Common.Test.Test;
|
||||
import TestingSystem.DVM.Configuration.DVMConfiguration;
|
||||
import Visual_DVM_2021.Passes.Pass_2021;
|
||||
|
||||
import java.util.Vector;
|
||||
public class ShowCurrentDVMConfigurationTests extends Pass_2021<DVMConfiguration> {
|
||||
@Override
|
||||
public String getIconPath() {
|
||||
return "/icons/ShowPassword.png";
|
||||
}
|
||||
@Override
|
||||
public String getButtonText() {
|
||||
return "";
|
||||
}
|
||||
@Override
|
||||
protected boolean canStart(Object... args) throws Exception {
|
||||
target = null;
|
||||
if (Current.Check(Log, Current.DVMConfiguration)) {
|
||||
target = Current.getDVMConfiguration();
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@Override
|
||||
protected void showPreparation() throws Exception {
|
||||
Global.testingServer.db.UnselectAllGTC();
|
||||
}
|
||||
@Override
|
||||
protected void showDone() throws Exception {
|
||||
System.out.println("package="+target.id);
|
||||
Vector<Group> groups = target.getGroups();
|
||||
Vector<Test> tests = target.getTests();
|
||||
//-----
|
||||
//--
|
||||
for (Group group: groups)
|
||||
group.Select(true);
|
||||
for (Test test: tests)
|
||||
test.Select(true);
|
||||
//--
|
||||
|
||||
if (!groups.isEmpty()){
|
||||
Global.testingServer.db.groups.ShowUI(groups.lastElement().id);
|
||||
}
|
||||
if (!tests.isEmpty()){
|
||||
Global.testingServer.db.tests.ShowUI(tests.lastElement().id);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
167
src/Visual_DVM_2021/Passes/All/StartCurrentDVMConfiguration.java
Normal file
167
src/Visual_DVM_2021/Passes/All/StartCurrentDVMConfiguration.java
Normal file
@@ -0,0 +1,167 @@
|
||||
package Visual_DVM_2021.Passes.All;
|
||||
import Common.Current;
|
||||
import Common.Global;
|
||||
import Common.UI.UI;
|
||||
import Common.Utils.Utils;
|
||||
import GlobalData.Compiler.CompilerType;
|
||||
import GlobalData.Machine.MachineType;
|
||||
import GlobalData.User.UserState;
|
||||
import TestingSystem.Common.Group.Group;
|
||||
import TestingSystem.Common.Test.Test;
|
||||
import TestingSystem.Common.TestingServer;
|
||||
import TestingSystem.DVM.Configuration.DVMConfiguration;
|
||||
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
||||
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||
import Visual_DVM_2021.Passes.Server.PublishServerObject;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import java.util.Vector;
|
||||
public class StartCurrentDVMConfiguration extends PublishServerObject<TestingServer, DVMPackage> {
|
||||
Vector<DVMConfiguration> configurations;
|
||||
Vector<Group> groups;
|
||||
Vector<Test> tests;
|
||||
LinkedHashMap<Integer, Vector<Test>> testByGroups;
|
||||
Vector<DVMCompilationTask> tasks;
|
||||
int tasks_count;
|
||||
public StartCurrentDVMConfiguration() {
|
||||
super(Global.testingServer, DVMPackage.class);
|
||||
}
|
||||
//пока пусть будет одна конфигурация и один пакет.
|
||||
@Override
|
||||
public String getIconPath() {
|
||||
return "/icons/Start.png";
|
||||
}
|
||||
//--
|
||||
public static String checkFlags(String flags_in) {
|
||||
if (!flags_in.contains("-shared-dvm")) {
|
||||
if (flags_in.isEmpty())
|
||||
return "-shared-dvm";
|
||||
else return flags_in + " -shared-dvm";
|
||||
} else
|
||||
return flags_in;
|
||||
}
|
||||
public static String checkEnvironments(String environmentsSet_in) {
|
||||
if (!environmentsSet_in.contains("DVMH_NO_DIRECT_COPY")) {
|
||||
if (environmentsSet_in.isEmpty())
|
||||
return "DVMH_NO_DIRECT_COPY=" + Utils.DQuotes("1");
|
||||
else
|
||||
return environmentsSet_in + " " + "DVMH_NO_DIRECT_COPY=" + Utils.DQuotes("1");
|
||||
} else
|
||||
return environmentsSet_in;
|
||||
}
|
||||
//--
|
||||
public Vector<DVMCompilationTask> createTasksCGT(
|
||||
DVMConfiguration configuration,
|
||||
Group group,
|
||||
Test test
|
||||
) {
|
||||
Vector<DVMCompilationTask> compilationTasks = new Vector<>();
|
||||
for (String flags : configuration.getFlagsArray()) {
|
||||
String checked_flags = checkFlags(flags);
|
||||
DVMCompilationTask dvmCompilationTask = new DVMCompilationTask(
|
||||
configuration,
|
||||
group,
|
||||
test,
|
||||
checked_flags
|
||||
);
|
||||
Vector<String> matrixes = configuration.getMatrixes(test.max_dim);
|
||||
Vector<String> environments = configuration.getEnvironments();
|
||||
for (String environmentSet : environments) {
|
||||
String checkedEnvironments = checkEnvironments(environmentSet);
|
||||
if (flags.trim().equalsIgnoreCase("-s")) {
|
||||
dvmCompilationTask.runTasks.add(new DVMRunTask(
|
||||
configuration,
|
||||
group,
|
||||
test,
|
||||
"",
|
||||
checked_flags,
|
||||
checkedEnvironments,
|
||||
configuration.getParamsText(),
|
||||
target.kernels
|
||||
));
|
||||
tasks_count++;
|
||||
} else
|
||||
for (String matrix : matrixes) {
|
||||
dvmCompilationTask.runTasks.add(new DVMRunTask(
|
||||
configuration,
|
||||
group,
|
||||
test,
|
||||
matrix,
|
||||
checked_flags,
|
||||
checkedEnvironments,
|
||||
configuration.getParamsText(),
|
||||
target.kernels));
|
||||
tasks_count++;
|
||||
}
|
||||
}
|
||||
compilationTasks.add(dvmCompilationTask);
|
||||
}
|
||||
return compilationTasks;
|
||||
}
|
||||
//--
|
||||
@Override
|
||||
protected boolean canStart(Object... args) throws Exception {
|
||||
configurations = new Vector<>();
|
||||
groups = new Vector<>();
|
||||
tests = new Vector<>();
|
||||
testByGroups = new LinkedHashMap<>();
|
||||
tasks = new Vector<>();
|
||||
tasks_count=0;
|
||||
//---
|
||||
if (!Current.getAccount().CheckRegistered(Log)) {
|
||||
return false;
|
||||
}
|
||||
if (!Current.Check(Log, Current.DVMConfiguration)) {
|
||||
return false;
|
||||
}
|
||||
if (Current.Check(Log, Current.Machine, Current.User, Current.Compiler)) {
|
||||
if (!Current.getMachine().type.equals(MachineType.Server)) {
|
||||
Log.Writeln_("Тестирование поддерживается только на одиночном удалённом сервере.");
|
||||
return false;
|
||||
}
|
||||
if (!Current.getUser().state.equals(UserState.ready_to_work)) {
|
||||
Log.Writeln_("Пользователь не готов к работе. Выполните инициализацию пользователя!");
|
||||
return false;
|
||||
}
|
||||
if (!Current.getCompiler().type.equals(CompilerType.dvm)) {
|
||||
Log.Writeln_("Тестирование поддерживается только для DVM компиляторов.");
|
||||
return false;
|
||||
}
|
||||
if (!Current.getCompiler().versionLoaded)
|
||||
passes.get(PassCode_2021.ShowCompilerVersion).Do(Current.getCompiler(), false);
|
||||
//--
|
||||
target = new DVMPackage(
|
||||
Current.getAccount(),
|
||||
Current.getMachine(),
|
||||
Current.getUser(),
|
||||
Current.getCompiler()
|
||||
);
|
||||
//----
|
||||
DVMConfiguration configuration = Current.getDVMConfiguration();
|
||||
configurations.add(configuration);
|
||||
//--
|
||||
groups = configuration.getGroups();
|
||||
tests = configuration.getTests(groups, testByGroups);
|
||||
//--
|
||||
for (Group group : groups) {
|
||||
Vector<Test> groupTests = testByGroups.get(group.id);
|
||||
for (Test test : groupTests)
|
||||
tasks.addAll(createTasksCGT(configuration, group, test));
|
||||
}
|
||||
return UI.Question("Будет запущено " + tasks_count + " задач. Продолжить");
|
||||
}
|
||||
return false;
|
||||
}
|
||||
@Override
|
||||
protected void ServerAction() throws Exception {
|
||||
//занесение информации об участвующих группах конфигурациях и тестах
|
||||
target.saveConfigurations(configurations);
|
||||
target.saveGroups(groups);
|
||||
target.saveTests(tests);
|
||||
//--
|
||||
target.saveTasks(tasks, tasks_count);
|
||||
super.ServerAction();
|
||||
}
|
||||
}
|
||||
@@ -343,17 +343,27 @@ public enum PassCode_2021 {
|
||||
ShowSapforCompilationErr,
|
||||
GetOldBugReports,
|
||||
ShowCurrentDVMPackage,
|
||||
SaveCurrentDVMPackage
|
||||
SaveCurrentDVMPackage,
|
||||
|
||||
ShowCurrentDVMConfigurationTests,
|
||||
SaveCurrentDVMConfiguration,
|
||||
StartCurrentDVMConfiguration,
|
||||
;
|
||||
//--
|
||||
public String getDescription() {
|
||||
switch (this) {
|
||||
case Undefined:
|
||||
return "?";
|
||||
case StartCurrentDVMConfiguration:
|
||||
return "Запустить текущую конфигурацию тестирования DVM системы";
|
||||
case ShowCurrentDVMConfigurationTests:
|
||||
return "Отметить группы и тесты, участвующие в текущей конфигурации DVM системы";
|
||||
case SaveCurrentDVMConfiguration:
|
||||
return "Сохранить информацию о тестах текущей конфигурации DVM системы";
|
||||
case SaveCurrentDVMPackage:
|
||||
return "Сохранить текущий пакет тестирования DVM";
|
||||
return "Сохранить текущий пакет тестирования DVM системы";
|
||||
case ShowCurrentDVMPackage:
|
||||
return "Редактировать пакет тестирования DVM";
|
||||
return "Редактировать пакет тестирования DVM системы";
|
||||
case GetOldBugReports:
|
||||
return "Получить неиспользуемые баг репорты";
|
||||
case SPF_RenameIncludes:
|
||||
|
||||
Reference in New Issue
Block a user