Рефакторинг конструкторов объектов тестирования.
This commit is contained in:
53
.idea/workspace.xml
generated
53
.idea/workspace.xml
generated
@@ -7,52 +7,47 @@
|
|||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
||||||
<change afterPath="$PROJECT_DIR$/src/Common/UI/VisualCache/SapforConfigurationCache.java" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/src/Common/UI/VisualCache/DVMConfigurationCache.java" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Settings/Json/SettingsArrayJson.java" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMSettings/DVMSettingsDBTable.java" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Settings/Json/SettingsJson.java" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsBar.java" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMSettings/DVMSettings.java" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsFields.form" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsFields.java" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/DeleteDVMSettings.java" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/EditDVMSettings.java" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/PublishDVMSettings.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" 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/Constants.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Constants.java" 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/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/UI/UI.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/UI.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Common/UI/VisualCache/ConfigurationCache.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/VisualCache/ConfigurationCache.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Common/UI/VisualCache/ConfigurationCache.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/VisualCache/ConfigurationCache.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Common/UI/VisualCache/VisualCaches.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/VisualCache/VisualCaches.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Common/UI/VisualCache/VisualCaches.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/VisualCache/VisualCaches.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Configuration/Configuration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Configuration/Configuration.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Configuration/Configuration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Configuration/Configuration.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Group/Json/GroupJson.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Group/Json/GroupJson.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Settings/Settings.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Settings/Settings.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/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/Common/TestsDatabase.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/TestsDatabase.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/DVMConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/DVMConfiguration.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/DVMConfigurationDBTable.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.form" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMConfiguration/UI/ConfigurationFields.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/DVM/DVMPackage/DVMPackage_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/DVMPackage_json.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMSettings/DVMSettings.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMSettings/DVMSettings.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTasks/DVMCompilationTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTasks/DVMCompilationTask.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTasks/DVMRunTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMTasks/DVMRunTask.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforConfiguration_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforConfiguration_json.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforConfiguration_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforConfiguration_json.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforPackage_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforPackage_json.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforPackage_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforPackage_json.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforTest_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforTest_json.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforTestingSet_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforTestingSet_json.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforTestingSet_json.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/Json/SapforTestingSet_json.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfiguration.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/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/SapforConfigurationDBTable.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.form" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfiguration/UI/SapforConfigurationFields.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfigurationCommand/SapforConfigurationCommand.java" beforeDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfigurationCommand/SapforConfigurationCommandsDBTable.java" beforeDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfigurationCommand/SapforConfigurationCommandsMenuBar.java" beforeDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfigurationCommand/UI/SapforConfigurationCommandFields.form" beforeDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforConfigurationCommand/UI/SapforConfigurationCommandFields.java" beforeDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforPackage/SapforPackage.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettings.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettings.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettings.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettings.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettingsBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettingsBar.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettingsCommandsBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettingsCommand/SapforSettingsCommandsBar.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettingsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettings/SapforSettingsDBTable.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettingsCommand/SapforSettingsCommand.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettingsCommand/SapforSettingsCommand.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettingsCommand/SapforSettingsCommandsDBTable.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforSettingsCommand/SapforSettingsCommandsDBTable.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTask/SapforTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTask/SapforTask.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTask/SapforTask.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTask/SapforTask.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/DeleteSapforConfigurationCommand.java" beforeDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/SAPFOR/SapforTestingPlanner.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/EditSapforConfigurationCommand.java" beforeDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CloneSapforPackage.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/EditSapforSettingsCommand.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/EditSapforSettingsCommand.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/ShowCurrentDVMConfigurationTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/ShowCurrentDVMConfigurationTests.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/PublishSapforConfigurationCommand.java" beforeDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/StartSelectedDVMConfigurations.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/StartSelectedDVMConfigurations.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/PublishSapforSettingsCommand.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/PublishSapforSettingsCommand.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SynchronizeTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SynchronizeTests.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SaveCurrentDVMConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SaveCurrentDVMConfiguration.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SaveCurrentSAPFORConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SaveCurrentSAPFORConfiguration.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/ShowCurrentSAPFORConfigurationTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/ShowCurrentSAPFORConfigurationTests.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" />
|
<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" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SaveCurrentConfiguration.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/SaveCurrentConfiguration.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/ShowCurrentConfigurationTests.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/ShowCurrentConfigurationTests.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.form" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.form" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/TestingForm.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/buffer_.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/buffer_.form" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/buffer_.form" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/buffer_.form" afterDir="false" />
|
||||||
|
|||||||
@@ -477,7 +477,7 @@ public class Constants {
|
|||||||
public static String all_forbidden_characters_string = "";
|
public static String all_forbidden_characters_string = "";
|
||||||
public static Vector<String> admins_mails = new Vector_<>(
|
public static Vector<String> admins_mails = new Vector_<>(
|
||||||
|
|
||||||
"vmk-post@yandex.ru",
|
"vmk-post@yandex.ru"
|
||||||
"79854210702@ya.ru"
|
// "79854210702@ya.ru"
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -101,7 +101,6 @@ public enum Current {
|
|||||||
//-
|
//-
|
||||||
PackageVersion,
|
PackageVersion,
|
||||||
SapforConfiguration,
|
SapforConfiguration,
|
||||||
SapforConfigurationCommand,
|
|
||||||
SapforProfile,
|
SapforProfile,
|
||||||
SapforProfileSetting,
|
SapforProfileSetting,
|
||||||
//--
|
//--
|
||||||
@@ -109,7 +108,8 @@ public enum Current {
|
|||||||
SubscriberWorkspace,
|
SubscriberWorkspace,
|
||||||
DVMRunTask,
|
DVMRunTask,
|
||||||
SapforSettings,
|
SapforSettings,
|
||||||
SapforSettingsCommand
|
SapforSettingsCommand,
|
||||||
|
DVMSettings,
|
||||||
;
|
;
|
||||||
//-
|
//-
|
||||||
private static final LinkedHashMap<Current, Object> objects = new LinkedHashMap<>();
|
private static final LinkedHashMap<Current, Object> objects = new LinkedHashMap<>();
|
||||||
@@ -383,10 +383,12 @@ public enum Current {
|
|||||||
//--------------------------------------------
|
//--------------------------------------------
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
switch (this) {
|
switch (this) {
|
||||||
|
case DVMSettings:
|
||||||
|
return "Параметры тестирования DVM системы";
|
||||||
case SapforSettings:
|
case SapforSettings:
|
||||||
return "Настройки системы SAPFOR";
|
return "Параметры тестирования системы SAPFOR";
|
||||||
case SapforSettingsCommand:
|
case SapforSettingsCommand:
|
||||||
return "Команда настроек тестирования SAPFOR";
|
return "Команда SAPFOR";
|
||||||
case DVMRunTask:
|
case DVMRunTask:
|
||||||
return "Задача DVM тестирования";
|
return "Задача DVM тестирования";
|
||||||
case SapforPackage:
|
case SapforPackage:
|
||||||
@@ -413,8 +415,6 @@ public enum Current {
|
|||||||
return "Адресат";
|
return "Адресат";
|
||||||
case SelectedFunction:
|
case SelectedFunction:
|
||||||
return "Выбранный узел графа процедур";
|
return "Выбранный узел графа процедур";
|
||||||
case SapforConfigurationCommand:
|
|
||||||
return "Команда конфигурации тестирования SAPFOR";
|
|
||||||
case SapforConfiguration:
|
case SapforConfiguration:
|
||||||
return "Конфигурация тестирования SAPFOR";
|
return "Конфигурация тестирования SAPFOR";
|
||||||
case PackageVersion:
|
case PackageVersion:
|
||||||
|
|||||||
@@ -70,6 +70,8 @@ import TestingSystem.DVM.DVMConfiguration.DVMConfigurationDBTable;
|
|||||||
import TestingSystem.DVM.DVMConfiguration.DVMConfigurationsMenuBar;
|
import TestingSystem.DVM.DVMConfiguration.DVMConfigurationsMenuBar;
|
||||||
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
|
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
|
||||||
import TestingSystem.DVM.DVMPackage.DVMPackagesBar;
|
import TestingSystem.DVM.DVMPackage.DVMPackagesBar;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettingsDBTable;
|
||||||
|
import TestingSystem.DVM.DVMSettings.UI.DVMSettingsBar;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMRunTasksBar;
|
import TestingSystem.DVM.DVMTasks.DVMRunTasksBar;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMRunTasksSet;
|
import TestingSystem.DVM.DVMTasks.DVMRunTasksSet;
|
||||||
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
|
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
|
||||||
@@ -259,6 +261,7 @@ public class UI {
|
|||||||
menuBars.put(ServerSapforsDBTable.class, new ServerSapforsBar());
|
menuBars.put(ServerSapforsDBTable.class, new ServerSapforsBar());
|
||||||
menuBars.put(SapforSettingsDBTable.class, new SapforSettingsBar());
|
menuBars.put(SapforSettingsDBTable.class, new SapforSettingsBar());
|
||||||
menuBars.put(SapforSettingsCommandsDBTable.class, new SapforSettingsCommandsBar());
|
menuBars.put(SapforSettingsCommandsDBTable.class, new SapforSettingsCommandsBar());
|
||||||
|
menuBars.put(DVMSettingsDBTable.class, new DVMSettingsBar());
|
||||||
//---->>
|
//---->>
|
||||||
}
|
}
|
||||||
public static void CreateWindows() {
|
public static void CreateWindows() {
|
||||||
|
|||||||
@@ -13,18 +13,17 @@ import TestingSystem.Common.Test.Test;
|
|||||||
|
|
||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
public class ConfigurationCache extends VisualCache{
|
public class ConfigurationCache extends VisualCache {
|
||||||
public GroupsJson groupsJson = null;
|
public GroupsJson groupsJson = null;
|
||||||
public TestsJson testsJson = null;
|
public TestsJson testsJson = null;
|
||||||
public SettingsArrayJson settingsJson = null;
|
public SettingsArrayJson settingsJson = null;
|
||||||
public String settingsSummary = null;
|
public String settingsSummary = null;
|
||||||
public Vector<String> groupsSummary= null;
|
public Vector<String> groupsSummary = null;
|
||||||
//--
|
//--
|
||||||
public ConfigurationCache(Configuration configuration) {
|
public ConfigurationCache(Configuration configuration) {
|
||||||
if (configuration.packedGroupsJson.isEmpty()) {
|
if (configuration.packedGroupsJson.isEmpty()) {
|
||||||
groupsJson = new GroupsJson(); //просто пустой
|
groupsJson = new GroupsJson(); //просто пустой
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
groupsJson = Utils.gson.fromJson(configuration.packedGroupsJson, GroupsJson.class);
|
groupsJson = Utils.gson.fromJson(configuration.packedGroupsJson, GroupsJson.class);
|
||||||
}
|
}
|
||||||
//--
|
//--
|
||||||
@@ -43,19 +42,19 @@ public class ConfigurationCache extends VisualCache{
|
|||||||
}
|
}
|
||||||
//-
|
//-
|
||||||
LinkedHashMap<String, Vector<String>> gmap = new LinkedHashMap<>();
|
LinkedHashMap<String, Vector<String>> gmap = new LinkedHashMap<>();
|
||||||
for (GroupJson groupJson: groupsJson.array){
|
for (GroupJson groupJson : groupsJson.array) {
|
||||||
Vector<String> vector = null;
|
Vector<String> vector = null;
|
||||||
if (gmap.containsKey(groupJson.language)){
|
if (gmap.containsKey(groupJson.language)) {
|
||||||
vector = gmap.get(groupJson.language);
|
vector = gmap.get(groupJson.language);
|
||||||
}else {
|
} else {
|
||||||
vector = new Vector<>();
|
vector = new Vector<>();
|
||||||
gmap.put(groupJson.language, vector);
|
gmap.put(groupJson.language, vector);
|
||||||
}
|
}
|
||||||
vector.add(groupJson.description);
|
vector.add(groupJson.description);
|
||||||
}
|
}
|
||||||
groupsSummary = new Vector<>();
|
groupsSummary = new Vector<>();
|
||||||
for (String language: gmap.keySet()){
|
for (String language : gmap.keySet()) {
|
||||||
groupsSummary.add(language+": "+String.join(";", gmap.get(language)));
|
groupsSummary.add(language + ": " + String.join(";", gmap.get(language)));
|
||||||
}
|
}
|
||||||
Vector<String> settingsDescriptionsVector = new Vector<>();
|
Vector<String> settingsDescriptionsVector = new Vector<>();
|
||||||
for (SettingsJson settingsJson : settingsJson.array)
|
for (SettingsJson settingsJson : settingsJson.array)
|
||||||
@@ -65,23 +64,31 @@ public class ConfigurationCache extends VisualCache{
|
|||||||
public int getTestsCount() {
|
public int getTestsCount() {
|
||||||
return testsJson.array.size();
|
return testsJson.array.size();
|
||||||
}
|
}
|
||||||
public String getSettingsDescriptions() {
|
public Vector<Group> getGroups() {
|
||||||
return settingsSummary;
|
|
||||||
}
|
|
||||||
public Vector<Group> getGroups(){
|
|
||||||
Vector<Group> groups = new Vector<>();
|
Vector<Group> groups = new Vector<>();
|
||||||
for (GroupJson groupJson : groupsJson.array){
|
for (GroupJson groupJson : groupsJson.array) {
|
||||||
if (Global.testingServer.db.groups.containsKey(groupJson.id))
|
if (Global.testingServer.db.groups.containsKey(groupJson.id))
|
||||||
groups.add(Global.testingServer.db.groups.get(groupJson.id));
|
groups.add(Global.testingServer.db.groups.get(groupJson.id));
|
||||||
}
|
}
|
||||||
return groups;
|
return groups;
|
||||||
}
|
}
|
||||||
public Vector<Test> getTests(){
|
public Vector<Test> getTests() {
|
||||||
Vector<Test> tests = new Vector<>();
|
Vector<Test> tests = new Vector<>();
|
||||||
for (TestJson testJson : testsJson.array){
|
for (TestJson testJson : testsJson.array) {
|
||||||
if (Global.testingServer.db.tests.containsKey(testJson.id))
|
if (Global.testingServer.db.tests.containsKey(testJson.id))
|
||||||
tests.add(Global.testingServer.db.tests.get(testJson.id));
|
tests.add(Global.testingServer.db.tests.get(testJson.id));
|
||||||
}
|
}
|
||||||
return tests;
|
return tests;
|
||||||
}
|
}
|
||||||
|
public Vector<Test> getGroupTests(Group group) {
|
||||||
|
Vector<Test> tests = new Vector<>();
|
||||||
|
for (TestJson testJson : testsJson.array) {
|
||||||
|
if (Global.testingServer.db.tests.containsKey(testJson.id)) {
|
||||||
|
Test test = Global.testingServer.db.tests.get(testJson.id);
|
||||||
|
if (test.group_id == group.id)
|
||||||
|
tests.add(test);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return tests;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
20
src/Common/UI/VisualCache/DVMConfigurationCache.java
Normal file
20
src/Common/UI/VisualCache/DVMConfigurationCache.java
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
package Common.UI.VisualCache;
|
||||||
|
import Common.Global;
|
||||||
|
import TestingSystem.Common.Configuration.Configuration;
|
||||||
|
import TestingSystem.Common.Settings.Json.SettingsJson;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
|
|
||||||
|
import java.util.Vector;
|
||||||
|
public class DVMConfigurationCache extends ConfigurationCache{
|
||||||
|
public DVMConfigurationCache(Configuration configuration) {
|
||||||
|
super(configuration);
|
||||||
|
}
|
||||||
|
public Vector<DVMSettings> getSettings(){
|
||||||
|
Vector<DVMSettings> res = new Vector<>();
|
||||||
|
for (SettingsJson settingsJson : settingsJson.array){
|
||||||
|
if (Global.testingServer.db.dvmSettings.containsKey(settingsJson.id))
|
||||||
|
res.add(Global.testingServer.db.dvmSettings.get(settingsJson.id));
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -24,7 +24,7 @@ public class VisualCaches {
|
|||||||
if (object instanceof SapforConfiguration)
|
if (object instanceof SapforConfiguration)
|
||||||
return new SapforConfigurationCache((Configuration) object);
|
return new SapforConfigurationCache((Configuration) object);
|
||||||
if (object instanceof DVMConfiguration)
|
if (object instanceof DVMConfiguration)
|
||||||
return new ConfigurationCache((Configuration) object);
|
return new DVMConfigurationCache((Configuration) object);
|
||||||
if (object instanceof TestingPackage)
|
if (object instanceof TestingPackage)
|
||||||
return new PackageCache((TestingPackage) object);
|
return new PackageCache((TestingPackage) object);
|
||||||
return new VisualCache();
|
return new VisualCache();
|
||||||
|
|||||||
@@ -36,13 +36,6 @@ public class Configuration extends riDBObject {
|
|||||||
return Utils.getIcon("/icons/" + (autoTesting == 1 ? "RedPick" : "NotPick") + ".png");
|
return Utils.getIcon("/icons/" + (autoTesting == 1 ? "RedPick" : "NotPick") + ".png");
|
||||||
}
|
}
|
||||||
//--
|
//--
|
||||||
public String getFlags() {
|
|
||||||
return "";
|
|
||||||
}
|
|
||||||
public Vector<String> getFlagsArray() {
|
|
||||||
return new Vector<>();
|
|
||||||
}
|
|
||||||
//--
|
|
||||||
@Description("DEFAULT ''")
|
@Description("DEFAULT ''")
|
||||||
public String packedGroupsJson = "";
|
public String packedGroupsJson = "";
|
||||||
@Description("DEFAULT ''")
|
@Description("DEFAULT ''")
|
||||||
|
|||||||
@@ -613,6 +613,8 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
account.email = Constants.MailAddress;
|
account.email = Constants.MailAddress;
|
||||||
//-
|
//-
|
||||||
int sapforId = Integer.parseInt(request.arg);
|
int sapforId = Integer.parseInt(request.arg);
|
||||||
|
System.out.println("Sapfor_id = "+request.arg);
|
||||||
|
|
||||||
if (!db.serverSapfors.containsKey(sapforId)) {
|
if (!db.serverSapfors.containsKey(sapforId)) {
|
||||||
Log.Writeln_("Версия SAPFOR " + sapforId + " не существует.");
|
Log.Writeln_("Версия SAPFOR " + sapforId + " не существует.");
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -14,6 +14,7 @@ import TestingSystem.Common.TestingPackageToKill.TestingPackagesToKillDBTable;
|
|||||||
import TestingSystem.DVM.DVMConfiguration.DVMConfigurationDBTable;
|
import TestingSystem.DVM.DVMConfiguration.DVMConfigurationDBTable;
|
||||||
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||||
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
|
import TestingSystem.DVM.DVMPackage.DVMPackageDBTable;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettingsDBTable;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMRunTasksSet;
|
import TestingSystem.DVM.DVMTasks.DVMRunTasksSet;
|
||||||
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
|
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfigurationDBTable;
|
||||||
import TestingSystem.SAPFOR.SapforPackage.SapforPackage;
|
import TestingSystem.SAPFOR.SapforPackage.SapforPackage;
|
||||||
@@ -50,6 +51,7 @@ public class TestsDatabase extends SQLiteDatabase {
|
|||||||
public SapforSettingsDBTable sapforSettings;
|
public SapforSettingsDBTable sapforSettings;
|
||||||
public SapforSettingsCommandsDBTable sapforSettingsCommands;
|
public SapforSettingsCommandsDBTable sapforSettingsCommands;
|
||||||
//--
|
//--
|
||||||
|
public DVMSettingsDBTable dvmSettings;
|
||||||
public TestsDatabase() {
|
public TestsDatabase() {
|
||||||
super(Paths.get(System.getProperty("user.dir"), "Data", Constants.tests_db_name + ".sqlite").toFile());
|
super(Paths.get(System.getProperty("user.dir"), "Data", Constants.tests_db_name + ".sqlite").toFile());
|
||||||
}
|
}
|
||||||
@@ -66,6 +68,7 @@ public class TestsDatabase extends SQLiteDatabase {
|
|||||||
addTable(serverSapfors = new ServerSapforsDBTable());
|
addTable(serverSapfors = new ServerSapforsDBTable());
|
||||||
addTable(sapforSettings = new SapforSettingsDBTable());
|
addTable(sapforSettings = new SapforSettingsDBTable());
|
||||||
addTable(sapforSettingsCommands = new SapforSettingsCommandsDBTable());
|
addTable(sapforSettingsCommands = new SapforSettingsCommandsDBTable());
|
||||||
|
addTable(dvmSettings=new DVMSettingsDBTable());
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public PassCode_2021 getSynchronizePassCode() {
|
public PassCode_2021 getSynchronizePassCode() {
|
||||||
|
|||||||
@@ -7,96 +7,12 @@ import TestingSystem.Common.Configuration.Configuration;
|
|||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
//конфгурация тестирования ДВМ
|
//конфгурация тестирования ДВМ
|
||||||
public class DVMConfiguration extends Configuration {
|
public class DVMConfiguration extends Configuration {
|
||||||
//компиляция.
|
|
||||||
public String flags = "\n";
|
|
||||||
public int c_maxtime = 40;
|
public int c_maxtime = 40;
|
||||||
//матрица
|
|
||||||
public int cube = 0; //
|
|
||||||
public int max_proc_count = 4;
|
|
||||||
public int min_dim_proc_count = 1;
|
|
||||||
public int max_dim_proc_count = 4;
|
|
||||||
//запуск
|
|
||||||
public String environments="\n";
|
|
||||||
public String usr_par = "";
|
|
||||||
//-
|
|
||||||
//под флагами понимается в данном случае набор цепочек флагов запакованных через энтер.
|
|
||||||
// скорее всего будет лишь одна цепочка. с окружением похожая ситуация.
|
|
||||||
@Override
|
|
||||||
public String getFlags() {
|
|
||||||
return flags;
|
|
||||||
}
|
|
||||||
@Override
|
|
||||||
public Vector<String> getFlagsArray() {
|
|
||||||
return Utils.unpackStrings(flags);
|
|
||||||
}
|
|
||||||
//-
|
|
||||||
public Vector<String> getEnvironments() {
|
|
||||||
return Utils.unpackStrings(environments);
|
|
||||||
}
|
|
||||||
public Vector<String> getParams() {
|
|
||||||
return Utils.unpackStrings(usr_par);
|
|
||||||
}
|
|
||||||
public Vector<String> getMatrixes(int testDim) {
|
|
||||||
Vector<Vector<Integer>> res_ = new Vector<>();
|
|
||||||
Vector<String> res = new Vector<>();
|
|
||||||
if ((max_proc_count==0) || (min_dim_proc_count == 0 && max_dim_proc_count == 0)) {
|
|
||||||
res.add("");
|
|
||||||
} else {
|
|
||||||
if (testDim > 0) {
|
|
||||||
Vector<String> min_border = new Vector<>();
|
|
||||||
Vector<String> max_border = new Vector<>();
|
|
||||||
for (int i = 1; i <= testDim; ++i) {
|
|
||||||
min_border.add(String.valueOf(min_dim_proc_count));
|
|
||||||
max_border.add(String.valueOf(max_dim_proc_count));
|
|
||||||
}
|
|
||||||
Vector<Integer> from = RunConfiguration.getBounds(String.join(" ", min_border));
|
|
||||||
Vector<Integer> to = RunConfiguration.getBounds(String.join(" ", max_border));
|
|
||||||
if (from.size() != to.size()) {
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
if (from.size() != testDim) {
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
//1 стадия. заполнение.
|
|
||||||
for (int j = from.get(0); j <= to.get(0); ++j) {
|
|
||||||
Vector<Integer> m = new Vector<>();
|
|
||||||
res_.add(m);
|
|
||||||
m.add(j);
|
|
||||||
}
|
|
||||||
//---
|
|
||||||
if (testDim > 1) RunConfiguration.gen_rec(from, to, res_, 1, testDim, cube == 1);
|
|
||||||
for (Vector<Integer> m : res_) {
|
|
||||||
Vector<String> ms = new Vector<>();
|
|
||||||
int proc = 1;
|
|
||||||
for (int i : m) {
|
|
||||||
ms.add(String.valueOf(i));
|
|
||||||
proc *= i;
|
|
||||||
}
|
|
||||||
if (proc <= max_proc_count)
|
|
||||||
res.add(String.join(" ", ms));
|
|
||||||
}
|
|
||||||
} else res.add("");
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
public String getParamsText() {
|
|
||||||
Vector<String> params = getParams();
|
|
||||||
if ((params.size() == 1) && params.get(0).isEmpty()) return "";
|
|
||||||
return String.join("\n", params);
|
|
||||||
}
|
|
||||||
//-
|
|
||||||
@Override
|
@Override
|
||||||
public void SynchronizeFields(DBObject src) {
|
public void SynchronizeFields(DBObject src) {
|
||||||
super.SynchronizeFields(src);
|
super.SynchronizeFields(src);
|
||||||
DVMConfiguration c = (DVMConfiguration) src;
|
DVMConfiguration c = (DVMConfiguration) src;
|
||||||
flags = c.flags;
|
|
||||||
c_maxtime=c.c_maxtime;
|
c_maxtime=c.c_maxtime;
|
||||||
cube= c.cube;
|
|
||||||
max_proc_count=c.max_proc_count;
|
|
||||||
min_dim_proc_count=c.min_dim_proc_count;
|
|
||||||
max_dim_proc_count=c.max_dim_proc_count;
|
|
||||||
environments=c.environments;
|
|
||||||
usr_par=c.usr_par;
|
|
||||||
}
|
}
|
||||||
public DVMConfiguration(DVMConfiguration src){
|
public DVMConfiguration(DVMConfiguration src){
|
||||||
this.SynchronizeFields(src);
|
this.SynchronizeFields(src);
|
||||||
|
|||||||
@@ -2,17 +2,11 @@ package TestingSystem.DVM.DVMConfiguration;
|
|||||||
import Common.Current;
|
import Common.Current;
|
||||||
import Common.Database.DBObject;
|
import Common.Database.DBObject;
|
||||||
import Common.Database.iDBTable;
|
import Common.Database.iDBTable;
|
||||||
import Common.Global;
|
|
||||||
import Common.UI.DataSetControlForm;
|
import Common.UI.DataSetControlForm;
|
||||||
import Common.UI.Tables.DBObjectSelector;
|
|
||||||
import Common.UI.Tables.TableEditors;
|
|
||||||
import Common.UI.Tables.TableRenderers;
|
import Common.UI.Tables.TableRenderers;
|
||||||
import Common.UI.VisualCache.ConfigurationCache;
|
import Common.UI.VisualCache.ConfigurationCache;
|
||||||
import Common.UI.VisualCache.VisualCache;
|
|
||||||
import Common.UI.VisualCache.VisualCaches;
|
import Common.UI.VisualCache.VisualCaches;
|
||||||
import Common.UI.VisualiserStringList;
|
|
||||||
import Common.UI.Windows.Dialog.DBObjectDialog;
|
import Common.UI.Windows.Dialog.DBObjectDialog;
|
||||||
import Common.Utils.Utils;
|
|
||||||
import TestingSystem.DVM.DVMConfiguration.UI.ConfigurationFields;
|
import TestingSystem.DVM.DVMConfiguration.UI.ConfigurationFields;
|
||||||
public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
||||||
public DVMConfigurationDBTable() {
|
public DVMConfigurationDBTable() {
|
||||||
@@ -39,11 +33,8 @@ public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected void AdditionalInitColumns() {
|
protected void AdditionalInitColumns() {
|
||||||
columns.get(5).setRenderer(TableRenderers.RendererMultiline);
|
columns.get(6).setRenderer(TableRenderers.RendererMultiline);
|
||||||
columns.get(5).setMaxWidth(500);
|
columns.get(6).setMaxWidth(500);
|
||||||
columns.get(7).setRenderer(TableRenderers.RendererMultiline);
|
|
||||||
columns.get(8).setRenderer(TableRenderers.RendererMultiline);
|
|
||||||
columns.get(15).setRenderer(TableRenderers.RendererMultiline);
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -53,17 +44,11 @@ public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
|||||||
"имя",
|
"имя",
|
||||||
"автор",
|
"автор",
|
||||||
"ядра",
|
"ядра",
|
||||||
|
"параметры",
|
||||||
"группы",
|
"группы",
|
||||||
"тестов",
|
"тестов",
|
||||||
"флаги",
|
"компиляция(с)",
|
||||||
"окружение",
|
"запуск(с)"
|
||||||
"c_time",
|
|
||||||
"куб",
|
|
||||||
"max",
|
|
||||||
"min dim",
|
|
||||||
"max dim",
|
|
||||||
"r_time",
|
|
||||||
"usr.par"
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
@@ -76,32 +61,16 @@ public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
|||||||
return object.sender_name;
|
return object.sender_name;
|
||||||
case 4:
|
case 4:
|
||||||
return object.kernels;
|
return object.kernels;
|
||||||
|
|
||||||
case 5:
|
case 5:
|
||||||
return cache.groupsSummary;
|
return cache.settingsSummary;
|
||||||
case 6:
|
case 6:
|
||||||
return cache.getTestsCount();
|
return cache.groupsSummary;
|
||||||
//todo упростить. и флаги и окружение будут просто одной строкой. мульти не актуально.
|
|
||||||
case 7:
|
case 7:
|
||||||
return Utils.unpackStrings(object.flags, true);
|
return cache.getTestsCount();
|
||||||
case 8:
|
case 8:
|
||||||
return Utils.unpackStrings(object.environments, true);
|
|
||||||
//------------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
case 9:
|
|
||||||
return object.c_maxtime;
|
return object.c_maxtime;
|
||||||
case 10:
|
case 9:
|
||||||
return object.cube;
|
|
||||||
case 11:
|
|
||||||
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;
|
return object.maxtime;
|
||||||
case 15:
|
|
||||||
return Utils.unpackStrings(object.usr_par, true);
|
|
||||||
default:
|
default:
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
@@ -111,70 +80,32 @@ public class DVMConfigurationDBTable extends iDBTable<DVMConfiguration> {
|
|||||||
return new DBObjectDialog<DVMConfiguration, ConfigurationFields>(ConfigurationFields.class) {
|
return new DBObjectDialog<DVMConfiguration, ConfigurationFields>(ConfigurationFields.class) {
|
||||||
@Override
|
@Override
|
||||||
public int getDefaultHeight() {
|
public int getDefaultHeight() {
|
||||||
return 480;
|
return 300;
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public int getDefaultWidth() {
|
public int getDefaultWidth() {
|
||||||
return 1000;
|
return 500;
|
||||||
}
|
|
||||||
@Override
|
|
||||||
public void validateFields() {
|
|
||||||
int min = (int) fields.sMinDimProc.getValue();
|
|
||||||
int max = (int) fields.sMaxDimProc.getValue();
|
|
||||||
if (max < min)
|
|
||||||
Log.Writeln_("Некорректный диапазон размерностей: максимум меньше минимума");
|
|
||||||
if ((min == 0) && (max != 0) || (min != 0) && (max == 0))
|
|
||||||
Log.Writeln_("Некорректный диапазон размерностей. " +
|
|
||||||
"'0' допускается только одновременно на обеих границах,\n" +
|
|
||||||
"и подразумевает единственный запуск без решётки");
|
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void fillFields() {
|
public void fillFields() {
|
||||||
fields.tfName.setText(Result.description);
|
fields.tfName.setText(Result.description);
|
||||||
//------->>>>
|
//------->>>>
|
||||||
((VisualiserStringList) (fields.flagsList)).fill(Result.getFlagsArray());
|
|
||||||
((VisualiserStringList) (fields.environmentsList)).fill(Result.getEnvironments());
|
|
||||||
((VisualiserStringList) (fields.parList)).fill(Result.getParams());
|
|
||||||
//------->>>>
|
|
||||||
fields.sCompilationMaxtime.setValue(Result.c_maxtime);
|
fields.sCompilationMaxtime.setValue(Result.c_maxtime);
|
||||||
//-
|
|
||||||
fields.sMinDimProc.setValue(Result.min_dim_proc_count);
|
|
||||||
fields.sMaxDimProc.setValue(Result.max_dim_proc_count);
|
|
||||||
fields.cbCube.setSelected(Result.cube == 1);
|
|
||||||
fields.sRunMaxtime.setValue(Result.maxtime);
|
fields.sRunMaxtime.setValue(Result.maxtime);
|
||||||
//-
|
|
||||||
fields.sMaxProc.setValue(Result.max_proc_count);
|
|
||||||
fields.sKernels.setValue(Result.kernels);
|
fields.sKernels.setValue(Result.kernels);
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void ProcessResult() {
|
public void ProcessResult() {
|
||||||
Result.description = fields.tfName.getText();
|
Result.description = fields.tfName.getText();
|
||||||
Result.c_maxtime = (int) fields.sCompilationMaxtime.getValue();
|
Result.c_maxtime = (int) fields.sCompilationMaxtime.getValue();
|
||||||
Result.min_dim_proc_count = (int) fields.sMinDimProc.getValue();
|
|
||||||
Result.max_dim_proc_count = (int) fields.sMaxDimProc.getValue();
|
|
||||||
Result.cube = fields.cbCube.isSelected() ? 1 : 0;
|
|
||||||
Result.max_proc_count = (int) fields.sMaxProc.getValue();
|
|
||||||
Result.maxtime = (int) fields.sRunMaxtime.getValue();
|
Result.maxtime = (int) fields.sRunMaxtime.getValue();
|
||||||
Result.flags = ((VisualiserStringList) (fields.flagsList)).pack();
|
Result.kernels = (int) fields.sKernels.getValue();
|
||||||
Result.environments = ((VisualiserStringList) (fields.environmentsList)).pack();
|
|
||||||
Result.usr_par = ((VisualiserStringList) (fields.parList)).pack();
|
|
||||||
Result.kernels= (int)fields.sKernels.getValue();
|
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void SetReadonly() {
|
public void SetReadonly() {
|
||||||
fields.tfName.setEnabled(false);
|
fields.tfName.setEnabled(false);
|
||||||
fields.sCompilationMaxtime.setEnabled(false);
|
fields.sCompilationMaxtime.setEnabled(false);
|
||||||
fields.sRunMaxtime.setEnabled(false);
|
fields.sRunMaxtime.setEnabled(false);
|
||||||
fields.sMinDimProc.setEnabled(false);
|
|
||||||
fields.sMaxDimProc.setEnabled(false);
|
|
||||||
fields.cbCube.setEnabled(false);
|
|
||||||
fields.sMaxProc.setEnabled(false);
|
|
||||||
fields.bAddFlags.setEnabled(false);
|
|
||||||
fields.bDeleteFlags.setEnabled(false);
|
|
||||||
fields.bAddEnvironments.setEnabled(false);
|
|
||||||
fields.bDeleteEnvironment.setEnabled(false);
|
|
||||||
fields.bAddPar.setEnabled(false);
|
|
||||||
fields.bDeletePar.setEnabled(false);
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,32 +3,20 @@
|
|||||||
<grid id="27dc6" binding="content" layout-manager="GridLayoutManager" row-count="1" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
<grid id="27dc6" binding="content" layout-manager="GridLayoutManager" row-count="1" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
||||||
<margin top="0" left="0" bottom="0" right="0"/>
|
<margin top="0" left="0" bottom="0" right="0"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<xy x="20" y="20" width="877" height="400"/>
|
<xy x="20" y="20" width="467" height="163"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<properties/>
|
<properties/>
|
||||||
<border type="none"/>
|
<border type="none"/>
|
||||||
<children>
|
<children>
|
||||||
<splitpane id="78a2d" binding="SC1">
|
<grid id="5bf8c" layout-manager="GridLayoutManager" row-count="5" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
||||||
<constraints>
|
|
||||||
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false">
|
|
||||||
<preferred-size width="200" height="200"/>
|
|
||||||
</grid>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<dividerLocation value="500"/>
|
|
||||||
<dividerSize value="3"/>
|
|
||||||
</properties>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<grid id="ee2fd" layout-manager="GridLayoutManager" row-count="9" column-count="2" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
|
||||||
<margin top="0" left="0" bottom="0" right="0"/>
|
<margin top="0" left="0" bottom="0" right="0"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<splitpane position="left"/>
|
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
<properties/>
|
<properties/>
|
||||||
<border type="none"/>
|
<border type="none"/>
|
||||||
<children>
|
<children>
|
||||||
<component id="259d7" class="javax.swing.JLabel">
|
<component id="18f5c" class="javax.swing.JLabel">
|
||||||
<constraints>
|
<constraints>
|
||||||
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
@@ -37,12 +25,12 @@
|
|||||||
<text value="название"/>
|
<text value="название"/>
|
||||||
</properties>
|
</properties>
|
||||||
</component>
|
</component>
|
||||||
<vspacer id="264c1">
|
<vspacer id="68a9">
|
||||||
<constraints>
|
<constraints>
|
||||||
<grid row="8" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
|
<grid row="4" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
</vspacer>
|
</vspacer>
|
||||||
<component id="6795f" class="javax.swing.JTextField" binding="tfName" custom-create="true">
|
<component id="fdaa3" class="javax.swing.JTextField" binding="tfName" custom-create="true">
|
||||||
<constraints>
|
<constraints>
|
||||||
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
<grid row="0" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
<minimum-size width="200" height="30"/>
|
<minimum-size width="200" height="30"/>
|
||||||
@@ -52,7 +40,35 @@
|
|||||||
</constraints>
|
</constraints>
|
||||||
<properties/>
|
<properties/>
|
||||||
</component>
|
</component>
|
||||||
<component id="9219f" class="javax.swing.JSpinner" binding="sMinDimProc">
|
<component id="1a85a" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="2" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="макс. время компиляции, сек"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="fbc6d" class="javax.swing.JSpinner" binding="sCompilationMaxtime">
|
||||||
|
<constraints>
|
||||||
|
<grid row="2" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
|
<minimum-size width="100" height="30"/>
|
||||||
|
<preferred-size width="238" height="30"/>
|
||||||
|
<maximum-size width="100" height="30"/>
|
||||||
|
</grid>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
</component>
|
||||||
|
<component id="30c43" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="3" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="макс. время выполнения, сек"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="69368" class="javax.swing.JSpinner" binding="sRunMaxtime">
|
||||||
<constraints>
|
<constraints>
|
||||||
<grid row="3" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
<grid row="3" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
<minimum-size width="100" height="30"/>
|
<minimum-size width="100" height="30"/>
|
||||||
@@ -62,105 +78,7 @@
|
|||||||
</constraints>
|
</constraints>
|
||||||
<properties/>
|
<properties/>
|
||||||
</component>
|
</component>
|
||||||
<component id="5686a" class="javax.swing.JLabel">
|
<component id="15871" class="javax.swing.JLabel">
|
||||||
<constraints>
|
|
||||||
<grid row="3" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<text value="мин. число процессоров по измерению"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="79cbe" class="javax.swing.JLabel">
|
|
||||||
<constraints>
|
|
||||||
<grid row="4" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<text value="макс. число процессоров по измерению"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="33803" class="javax.swing.JSpinner" binding="sMaxDimProc">
|
|
||||||
<constraints>
|
|
||||||
<grid row="4" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
|
||||||
<minimum-size width="100" height="30"/>
|
|
||||||
<preferred-size width="100" height="30"/>
|
|
||||||
<maximum-size width="100" height="30"/>
|
|
||||||
</grid>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
</component>
|
|
||||||
<component id="9b066" class="javax.swing.JLabel">
|
|
||||||
<constraints>
|
|
||||||
<grid row="6" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<text value="макс. время компиляции, сек"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="d706b" class="javax.swing.JSpinner" binding="sCompilationMaxtime">
|
|
||||||
<constraints>
|
|
||||||
<grid row="6" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
|
||||||
<minimum-size width="100" height="30"/>
|
|
||||||
<preferred-size width="238" height="30"/>
|
|
||||||
<maximum-size width="100" height="30"/>
|
|
||||||
</grid>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
</component>
|
|
||||||
<component id="a3108" class="javax.swing.JLabel">
|
|
||||||
<constraints>
|
|
||||||
<grid row="7" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<text value="макс. время выполнения, сек"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="22d31" class="javax.swing.JSpinner" binding="sRunMaxtime">
|
|
||||||
<constraints>
|
|
||||||
<grid row="7" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
|
||||||
<minimum-size width="100" height="30"/>
|
|
||||||
<preferred-size width="100" height="30"/>
|
|
||||||
<maximum-size width="100" height="30"/>
|
|
||||||
</grid>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
</component>
|
|
||||||
<component id="cda3" class="javax.swing.JCheckBox" binding="cbCube">
|
|
||||||
<constraints>
|
|
||||||
<grid row="5" column="0" row-span="1" col-span="2" vsize-policy="3" hsize-policy="3" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<horizontalAlignment value="0"/>
|
|
||||||
<icon value="icons/NotPick.png"/>
|
|
||||||
<selectedIcon value="icons/Pick.png"/>
|
|
||||||
<text value="кубические решётки"/>
|
|
||||||
<toolTipText value="матрица с одинаковым размером измерений"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="a79b8" class="javax.swing.JLabel">
|
|
||||||
<constraints>
|
|
||||||
<grid row="2" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<text value="макс. число процессоров"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="a6c17" class="javax.swing.JSpinner" binding="sMaxProc">
|
|
||||||
<constraints>
|
|
||||||
<grid row="2" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
|
||||||
<minimum-size width="100" height="30"/>
|
|
||||||
<preferred-size width="100" height="30"/>
|
|
||||||
<maximum-size width="100" height="30"/>
|
|
||||||
</grid>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
</component>
|
|
||||||
<component id="9c982" class="javax.swing.JLabel">
|
|
||||||
<constraints>
|
<constraints>
|
||||||
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
</constraints>
|
</constraints>
|
||||||
@@ -170,7 +88,7 @@
|
|||||||
<toolTipText value="количество ядер, задействованное при тестировани"/>
|
<toolTipText value="количество ядер, задействованное при тестировани"/>
|
||||||
</properties>
|
</properties>
|
||||||
</component>
|
</component>
|
||||||
<component id="91540" class="javax.swing.JSpinner" binding="sKernels">
|
<component id="bd4cb" class="javax.swing.JSpinner" binding="sKernels">
|
||||||
<constraints>
|
<constraints>
|
||||||
<grid row="1" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
<grid row="1" column="1" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
<minimum-size width="100" height="30"/>
|
<minimum-size width="100" height="30"/>
|
||||||
@@ -182,241 +100,6 @@
|
|||||||
</component>
|
</component>
|
||||||
</children>
|
</children>
|
||||||
</grid>
|
</grid>
|
||||||
<grid id="f79b4" layout-manager="GridLayoutManager" row-count="1" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
|
||||||
<margin top="0" left="0" bottom="0" right="0"/>
|
|
||||||
<constraints>
|
|
||||||
<splitpane position="right"/>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<splitpane id="bd8be" binding="SC2">
|
|
||||||
<constraints>
|
|
||||||
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false">
|
|
||||||
<preferred-size width="200" height="200"/>
|
|
||||||
</grid>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<dividerLocation value="180"/>
|
|
||||||
<dividerSize value="3"/>
|
|
||||||
<orientation value="0"/>
|
|
||||||
</properties>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<grid id="a9834" layout-manager="BorderLayout" hgap="0" vgap="0">
|
|
||||||
<constraints>
|
|
||||||
<splitpane position="left"/>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<toolbar id="4f6a1" binding="flagsTools">
|
|
||||||
<constraints border-constraint="North"/>
|
|
||||||
<properties>
|
|
||||||
<floatable value="false"/>
|
|
||||||
</properties>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<component id="566f4" class="javax.swing.JLabel">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<foreground color="-16777216"/>
|
|
||||||
<text value="флаги"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="79287" class="javax.swing.JButton" binding="bAddFlags">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<borderPainted value="false"/>
|
|
||||||
<icon value="icons/Menu/Regions.png"/>
|
|
||||||
<maximumSize width="30" height="30"/>
|
|
||||||
<minimumSize width="30" height="30"/>
|
|
||||||
<preferredSize width="30" height="30"/>
|
|
||||||
<text value=""/>
|
|
||||||
<toolTipText value="Добавить флаги"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="1cb75" class="javax.swing.JButton" binding="bDeleteFlags">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<borderPainted value="false"/>
|
|
||||||
<icon value="icons/Delete.png"/>
|
|
||||||
<maximumSize width="30" height="30"/>
|
|
||||||
<minimumSize width="30" height="30"/>
|
|
||||||
<preferredSize width="30" height="30"/>
|
|
||||||
<text value=""/>
|
|
||||||
<toolTipText value="Удалить флаги"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
</children>
|
|
||||||
</toolbar>
|
|
||||||
<scrollpane id="99ead">
|
|
||||||
<constraints border-constraint="Center"/>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<component id="c0373" class="javax.swing.JList" binding="flagsList" custom-create="true">
|
|
||||||
<constraints/>
|
|
||||||
<properties/>
|
|
||||||
</component>
|
|
||||||
</children>
|
|
||||||
</scrollpane>
|
|
||||||
</children>
|
|
||||||
</grid>
|
|
||||||
<grid id="b9287" layout-manager="GridLayoutManager" row-count="1" column-count="1" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
|
||||||
<margin top="0" left="0" bottom="0" right="0"/>
|
|
||||||
<constraints>
|
|
||||||
<splitpane position="right"/>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<splitpane id="53277" binding="SC3">
|
|
||||||
<constraints>
|
|
||||||
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="3" indent="0" use-parent-layout="false">
|
|
||||||
<preferred-size width="200" height="200"/>
|
|
||||||
</grid>
|
|
||||||
</constraints>
|
|
||||||
<properties>
|
|
||||||
<dividerLocation value="85"/>
|
|
||||||
<dividerSize value="3"/>
|
|
||||||
<orientation value="0"/>
|
|
||||||
</properties>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<grid id="3d5c8" layout-manager="BorderLayout" hgap="0" vgap="0">
|
|
||||||
<constraints>
|
|
||||||
<splitpane position="right"/>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<toolbar id="612de" binding="parTools">
|
|
||||||
<constraints border-constraint="North"/>
|
|
||||||
<properties>
|
|
||||||
<floatable value="false"/>
|
|
||||||
</properties>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<component id="4a428" class="javax.swing.JLabel">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<foreground color="-16777216"/>
|
|
||||||
<text value="usr par"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="1d160" class="javax.swing.JButton" binding="bAddPar">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<borderPainted value="false"/>
|
|
||||||
<icon value="icons/RedAdd.png"/>
|
|
||||||
<maximumSize width="30" height="30"/>
|
|
||||||
<minimumSize width="30" height="30"/>
|
|
||||||
<preferredSize width="30" height="30"/>
|
|
||||||
<text value=""/>
|
|
||||||
<toolTipText value="Добавить параметр DVM системы"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="61ba8" class="javax.swing.JButton" binding="bDeletePar">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<borderPainted value="false"/>
|
|
||||||
<icon value="icons/Delete.png"/>
|
|
||||||
<maximumSize width="30" height="30"/>
|
|
||||||
<minimumSize width="30" height="30"/>
|
|
||||||
<preferredSize width="30" height="30"/>
|
|
||||||
<text value=""/>
|
|
||||||
<toolTipText value="Удалить параметр DVM системы"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
</children>
|
|
||||||
</toolbar>
|
|
||||||
<scrollpane id="d0f3b">
|
|
||||||
<constraints border-constraint="Center"/>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<component id="7cdd5" class="javax.swing.JList" binding="parList" custom-create="true">
|
|
||||||
<constraints/>
|
|
||||||
<properties/>
|
|
||||||
</component>
|
|
||||||
</children>
|
|
||||||
</scrollpane>
|
|
||||||
</children>
|
|
||||||
</grid>
|
|
||||||
<grid id="4c856" layout-manager="BorderLayout" hgap="0" vgap="0">
|
|
||||||
<constraints>
|
|
||||||
<splitpane position="left"/>
|
|
||||||
</constraints>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<toolbar id="81953" binding="environmentsTools">
|
|
||||||
<constraints border-constraint="North"/>
|
|
||||||
<properties>
|
|
||||||
<floatable value="false"/>
|
|
||||||
</properties>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<component id="cec3c" class="javax.swing.JLabel">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<font name="Times New Roman" size="16" style="2"/>
|
|
||||||
<foreground color="-16777216"/>
|
|
||||||
<text value="окружение"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="1e835" class="javax.swing.JButton" binding="bAddEnvironments">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<borderPainted value="false"/>
|
|
||||||
<icon value="icons/Menu/Regions.png"/>
|
|
||||||
<maximumSize width="30" height="30"/>
|
|
||||||
<minimumSize width="30" height="30"/>
|
|
||||||
<preferredSize width="30" height="30"/>
|
|
||||||
<text value=""/>
|
|
||||||
<toolTipText value="Добавить набор переменных окружения"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
<component id="b9e9d" class="javax.swing.JButton" binding="bDeleteEnvironment">
|
|
||||||
<constraints/>
|
|
||||||
<properties>
|
|
||||||
<borderPainted value="false"/>
|
|
||||||
<icon value="icons/Delete.png"/>
|
|
||||||
<maximumSize width="30" height="30"/>
|
|
||||||
<minimumSize width="30" height="30"/>
|
|
||||||
<preferredSize width="30" height="30"/>
|
|
||||||
<text value=""/>
|
|
||||||
<toolTipText value="Удалить переменную окружения"/>
|
|
||||||
</properties>
|
|
||||||
</component>
|
|
||||||
</children>
|
|
||||||
</toolbar>
|
|
||||||
<scrollpane id="f94f5">
|
|
||||||
<constraints border-constraint="Center"/>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children>
|
|
||||||
<component id="951ed" class="javax.swing.JList" binding="environmentsList" custom-create="true">
|
|
||||||
<constraints/>
|
|
||||||
<properties/>
|
|
||||||
</component>
|
|
||||||
</children>
|
|
||||||
</scrollpane>
|
|
||||||
</children>
|
|
||||||
</grid>
|
|
||||||
</children>
|
|
||||||
</splitpane>
|
|
||||||
</children>
|
|
||||||
</grid>
|
|
||||||
</children>
|
|
||||||
</splitpane>
|
|
||||||
</children>
|
|
||||||
</grid>
|
|
||||||
</children>
|
|
||||||
</splitpane>
|
|
||||||
</children>
|
</children>
|
||||||
</grid>
|
</grid>
|
||||||
</form>
|
</form>
|
||||||
|
|||||||
@@ -14,29 +14,10 @@ import java.awt.event.ActionEvent;
|
|||||||
import java.awt.event.ActionListener;
|
import java.awt.event.ActionListener;
|
||||||
public class ConfigurationFields implements DialogFields {
|
public class ConfigurationFields implements DialogFields {
|
||||||
public JTextField tfName;
|
public JTextField tfName;
|
||||||
public JSpinner sMinDimProc;
|
|
||||||
public JSpinner sMaxDimProc;
|
|
||||||
public JSpinner sCompilationMaxtime;
|
public JSpinner sCompilationMaxtime;
|
||||||
public JSpinner sRunMaxtime;
|
public JSpinner sRunMaxtime;
|
||||||
public JCheckBox cbCube;
|
|
||||||
public JSpinner sMaxProc;
|
|
||||||
public JList<String> flagsList;
|
|
||||||
public JList<String> environmentsList;
|
|
||||||
public JList<String> parList;
|
|
||||||
//-
|
//-
|
||||||
private JPanel content;
|
private JPanel content;
|
||||||
private JSplitPane SC1;
|
|
||||||
private JSplitPane SC2;
|
|
||||||
private JToolBar flagsTools;
|
|
||||||
public JButton bAddFlags;
|
|
||||||
public JButton bDeleteFlags;
|
|
||||||
private JSplitPane SC3;
|
|
||||||
private JToolBar parTools;
|
|
||||||
public JButton bAddPar;
|
|
||||||
public JButton bDeletePar;
|
|
||||||
private JToolBar environmentsTools;
|
|
||||||
public JButton bAddEnvironments;
|
|
||||||
public JButton bDeleteEnvironment;
|
|
||||||
public JSpinner sKernels;
|
public JSpinner sKernels;
|
||||||
@Override
|
@Override
|
||||||
public Component getContent() {
|
public Component getContent() {
|
||||||
@@ -45,64 +26,14 @@ public class ConfigurationFields implements DialogFields {
|
|||||||
private void createUIComponents() {
|
private void createUIComponents() {
|
||||||
// TODO: place custom component creation code here
|
// TODO: place custom component creation code here
|
||||||
tfName = new StyledTextField();
|
tfName = new StyledTextField();
|
||||||
//-
|
|
||||||
flagsList = new VisualiserStringList();
|
|
||||||
environmentsList = new VisualiserStringList();
|
|
||||||
parList = new VisualiserStringList();
|
|
||||||
}
|
}
|
||||||
public ConfigurationFields(){
|
public ConfigurationFields(){
|
||||||
sMinDimProc.setModel(new SpinnerNumberModel(1, 0, 128, 1));
|
|
||||||
sMaxDimProc.setModel(new SpinnerNumberModel(1, 0, 128, 1));
|
|
||||||
sMaxProc.setModel(new SpinnerNumberModel(0, 0, 128, 1));
|
|
||||||
sCompilationMaxtime.setModel(new SpinnerNumberModel(40,
|
sCompilationMaxtime.setModel(new SpinnerNumberModel(40,
|
||||||
5, 3600, 1
|
5, 3600, 1
|
||||||
));
|
));
|
||||||
sRunMaxtime.setModel(new SpinnerNumberModel(40,
|
sRunMaxtime.setModel(new SpinnerNumberModel(40,
|
||||||
5, 3600, 1
|
5, 3600, 1
|
||||||
));
|
));
|
||||||
bAddFlags.addActionListener(new ActionListener() {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
Pass_2021 pass = Pass_2021.passes.get(PassCode_2021.PickCompilerOptions);
|
|
||||||
if (pass.Do(Current.getCompiler()))
|
|
||||||
((VisualiserStringList) flagsList).addElement((String) pass.target);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
bDeleteFlags.addActionListener(new ActionListener() {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
((VisualiserStringList) flagsList).removeElement(flagsList.getSelectedValue());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
bAddEnvironments.addActionListener(new ActionListener() {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
Pass_2021 pass = Pass_2021.passes.get(PassCode_2021.PickCompilerEnvironmentsForTesting);
|
|
||||||
if (pass.Do(Current.getCompiler()))
|
|
||||||
((VisualiserStringList) environmentsList).addElement((String) pass.target);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
bDeleteEnvironment.addActionListener(new ActionListener() {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
((VisualiserStringList) environmentsList).removeElement(environmentsList.getSelectedValue());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
bDeletePar.addActionListener(new ActionListener() {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
((VisualiserStringList) parList).removeElement(parList.getSelectedValue());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
bAddPar.addActionListener(new ActionListener() {
|
|
||||||
@Override
|
|
||||||
public void actionPerformed(ActionEvent e) {
|
|
||||||
Pass_2021 pass = Pass_2021.passes.get(PassCode_2021.AddDVMParameterForTesting);
|
|
||||||
if (pass.Do()) {
|
|
||||||
((VisualiserStringList) parList).addElement((String) pass.target);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
sKernels.setModel(new SpinnerNumberModel(1, 1,
|
sKernels.setModel(new SpinnerNumberModel(1, 1,
|
||||||
Utils.getTestingMaxKernels(),
|
Utils.getTestingMaxKernels(),
|
||||||
1));
|
1));
|
||||||
|
|||||||
@@ -3,13 +3,19 @@ import Common.Constants;
|
|||||||
import Common.Current;
|
import Common.Current;
|
||||||
import Common.Database.DBObject;
|
import Common.Database.DBObject;
|
||||||
import Common.Global;
|
import Common.Global;
|
||||||
|
import Common.UI.VisualCache.DVMConfigurationCache;
|
||||||
|
import Common.UI.VisualCache.VisualCaches;
|
||||||
import GlobalData.Account.Account;
|
import GlobalData.Account.Account;
|
||||||
import GlobalData.Compiler.Compiler;
|
import GlobalData.Compiler.Compiler;
|
||||||
import GlobalData.Machine.Machine;
|
import GlobalData.Machine.Machine;
|
||||||
import GlobalData.Machine.MachineType;
|
import GlobalData.Machine.MachineType;
|
||||||
import GlobalData.User.User;
|
import GlobalData.User.User;
|
||||||
|
import TestingSystem.Common.Group.Group;
|
||||||
import TestingSystem.Common.TasksPackageState;
|
import TestingSystem.Common.TasksPackageState;
|
||||||
|
import TestingSystem.Common.Test.Test;
|
||||||
import TestingSystem.Common.TestingPackage.TestingPackage;
|
import TestingSystem.Common.TestingPackage.TestingPackage;
|
||||||
|
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||||
|
|
||||||
@@ -27,7 +33,12 @@ public class DVMPackage extends TestingPackage<DVMPackage_json> {
|
|||||||
//---
|
//---
|
||||||
public DVMPackage() {
|
public DVMPackage() {
|
||||||
}
|
}
|
||||||
public DVMPackage(Account account, Machine machine, User user, Compiler compiler, int kernels_in){
|
public DVMPackage(Account account,
|
||||||
|
Machine machine,
|
||||||
|
User user,
|
||||||
|
Compiler compiler,
|
||||||
|
Vector<DVMConfiguration> configurations,
|
||||||
|
int neeedsEmail_in) {
|
||||||
id = Constants.Nan;
|
id = Constants.Nan;
|
||||||
//-
|
//-
|
||||||
sender_name = account.name;
|
sender_name = account.name;
|
||||||
@@ -44,12 +55,29 @@ public class DVMPackage extends TestingPackage<DVMPackage_json> {
|
|||||||
drv = compiler.call_command;
|
drv = compiler.call_command;
|
||||||
version = compiler.getVersionInfo();
|
version = compiler.getVersionInfo();
|
||||||
//-
|
//-
|
||||||
kernels = kernels_in; //Global.properties.TestingKernels;
|
needsEmail = neeedsEmail_in;
|
||||||
needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
|
|
||||||
//--
|
|
||||||
package_json = new DVMPackage_json();
|
|
||||||
//--
|
//--
|
||||||
state = TasksPackageState.Queued;
|
state = TasksPackageState.Queued;
|
||||||
|
//--
|
||||||
|
for (DVMConfiguration configuration : configurations)
|
||||||
|
kernels = Math.max(configuration.kernels, kernels);
|
||||||
|
//-
|
||||||
|
tasksCount = 0;
|
||||||
|
Vector<DVMCompilationTask> compilationTasks = new Vector<DVMCompilationTask>();
|
||||||
|
for (DVMConfiguration configuration : configurations) {
|
||||||
|
DVMConfigurationCache cache = (DVMConfigurationCache) VisualCaches.GetCache(configuration);
|
||||||
|
for (Group group : cache.getGroups()) {
|
||||||
|
for (Test test : cache.getGroupTests(group)) {
|
||||||
|
for (DVMSettings dvmSettings : cache.getSettings()) {
|
||||||
|
DVMCompilationTask compilationTask = new DVMCompilationTask(configuration, dvmSettings, group, test, kernels);
|
||||||
|
compilationTasks.add(compilationTask);
|
||||||
|
tasksCount += compilationTask.runTasks.size();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
package_json = new DVMPackage_json(compilationTasks);
|
||||||
|
saveConfigurationsAsJson(configurations);
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public Class getJsonClass() {
|
public Class getJsonClass() {
|
||||||
@@ -83,25 +111,8 @@ public class DVMPackage extends TestingPackage<DVMPackage_json> {
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public boolean isVisible() {
|
public boolean isVisible() {
|
||||||
return (!DVMPackageDBTable.filterMyOnly || Current.getAccount().email.equals(sender_address))&&
|
return (!DVMPackageDBTable.filterMyOnly || Current.getAccount().email.equals(sender_address)) &&
|
||||||
(!DVMPackageDBTable.filterActive || state.isActive() );
|
(!DVMPackageDBTable.filterActive || state.isActive());
|
||||||
}
|
|
||||||
public void saveTasks(Vector<DVMCompilationTask> tasks, int allTasksCount){
|
|
||||||
tasksCount=allTasksCount;
|
|
||||||
//--
|
|
||||||
package_json=new DVMPackage_json();
|
|
||||||
DVMPackage_json json = package_json;
|
|
||||||
//инициализируем идентификаторы задач.
|
|
||||||
for (DVMCompilationTask compilationTask : tasks) {
|
|
||||||
//--
|
|
||||||
compilationTask.id = json.getMaxTaskId();
|
|
||||||
//-
|
|
||||||
for (DVMRunTask runTask : compilationTask.runTasks) {
|
|
||||||
runTask.id = json.getMaxTaskId();
|
|
||||||
runTask.dvmcompilationtask_id = compilationTask.id;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
json.compilationTasks.addAll(tasks);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package TestingSystem.DVM.DVMPackage;
|
package TestingSystem.DVM.DVMPackage;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
||||||
|
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||||
import com.google.gson.annotations.Expose;
|
import com.google.gson.annotations.Expose;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
@@ -13,5 +14,16 @@ public class DVMPackage_json implements Serializable {
|
|||||||
public int getMaxTaskId() {
|
public int getMaxTaskId() {
|
||||||
return max_task_id++;
|
return max_task_id++;
|
||||||
}
|
}
|
||||||
|
public DVMPackage_json(){}
|
||||||
|
public DVMPackage_json(List<DVMCompilationTask> tasks){
|
||||||
|
for (DVMCompilationTask compilationTask : tasks) {
|
||||||
|
compilationTask.id = getMaxTaskId();
|
||||||
|
//-
|
||||||
|
for (DVMRunTask runTask : compilationTask.runTasks) {
|
||||||
|
runTask.id = getMaxTaskId();
|
||||||
|
runTask.dvmcompilationtask_id = compilationTask.id;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
compilationTasks.addAll(tasks);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,88 @@
|
|||||||
package TestingSystem.DVM.DVMSettings;
|
package TestingSystem.DVM.DVMSettings;
|
||||||
|
import Common.Database.DBObject;
|
||||||
|
import GlobalData.RunConfiguration.RunConfiguration;
|
||||||
import TestingSystem.Common.Settings.Settings;
|
import TestingSystem.Common.Settings.Settings;
|
||||||
|
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||||
|
import com.sun.org.glassfish.gmbal.Description;
|
||||||
|
|
||||||
|
import java.util.Vector;
|
||||||
public class DVMSettings extends Settings {
|
public class DVMSettings extends Settings {
|
||||||
|
//todo.хранить флаги и окружение в json чтобы можно было в форме их видеть.
|
||||||
|
public String environments="";
|
||||||
|
@Description("DEFAULT 0")
|
||||||
|
public int Is_DVM_STAT= 0; //флаг вмест usr par, которые не использовались.
|
||||||
|
// public String usr_par = "";
|
||||||
|
//---
|
||||||
|
public int cube = 0; //
|
||||||
|
public int max_proc_count = 4;
|
||||||
|
public int min_dim_proc_count = 1;
|
||||||
|
public int max_dim_proc_count = 4;
|
||||||
|
//
|
||||||
|
public DVMSettings(){}
|
||||||
|
public DVMSettings(DVMSettings src){
|
||||||
|
this.SynchronizeFields(src);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void SynchronizeFields(DBObject src) {
|
||||||
|
super.SynchronizeFields(src);
|
||||||
|
DVMSettings c = (DVMSettings) src;
|
||||||
|
environments=c.environments;
|
||||||
|
Is_DVM_STAT = c.Is_DVM_STAT;
|
||||||
|
// usr_par=c.usr_par;
|
||||||
|
//-
|
||||||
|
cube= c.cube;
|
||||||
|
max_proc_count=c.max_proc_count;
|
||||||
|
min_dim_proc_count=c.min_dim_proc_count;
|
||||||
|
max_dim_proc_count=c.max_dim_proc_count;
|
||||||
|
}
|
||||||
|
public String printUsrPar(){
|
||||||
|
return "Is_DVM_STAT="+Is_DVM_STAT;
|
||||||
|
}
|
||||||
|
public Vector<String> getMatrixes(int testDim) {
|
||||||
|
Vector<Vector<Integer>> res_ = new Vector<>();
|
||||||
|
Vector<String> res = new Vector<>();
|
||||||
|
if ((max_proc_count==0) || (min_dim_proc_count == 0 && max_dim_proc_count == 0)) {
|
||||||
|
res.add("");
|
||||||
|
} else {
|
||||||
|
if (testDim > 0) {
|
||||||
|
Vector<String> min_border = new Vector<>();
|
||||||
|
Vector<String> max_border = new Vector<>();
|
||||||
|
for (int i = 1; i <= testDim; ++i) {
|
||||||
|
min_border.add(String.valueOf(min_dim_proc_count));
|
||||||
|
max_border.add(String.valueOf(max_dim_proc_count));
|
||||||
|
}
|
||||||
|
Vector<Integer> from = RunConfiguration.getBounds(String.join(" ", min_border));
|
||||||
|
Vector<Integer> to = RunConfiguration.getBounds(String.join(" ", max_border));
|
||||||
|
if (from.size() != to.size()) {
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
if (from.size() != testDim) {
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
//1 стадия. заполнение.
|
||||||
|
for (int j = from.get(0); j <= to.get(0); ++j) {
|
||||||
|
Vector<Integer> m = new Vector<>();
|
||||||
|
res_.add(m);
|
||||||
|
m.add(j);
|
||||||
|
}
|
||||||
|
//---
|
||||||
|
if (testDim > 1) RunConfiguration.gen_rec(from, to, res_, 1, testDim, cube == 1);
|
||||||
|
for (Vector<Integer> m : res_) {
|
||||||
|
Vector<String> ms = new Vector<>();
|
||||||
|
int proc = 1;
|
||||||
|
for (int i : m) {
|
||||||
|
ms.add(String.valueOf(i));
|
||||||
|
proc *= i;
|
||||||
|
}
|
||||||
|
if (proc <= max_proc_count)
|
||||||
|
res.add(String.join(" ", ms));
|
||||||
|
}
|
||||||
|
} else res.add("");
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
public String getParamsText() {
|
||||||
|
return "Is_DVM_STAT="+Is_DVM_STAT;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
149
src/TestingSystem/DVM/DVMSettings/DVMSettingsDBTable.java
Normal file
149
src/TestingSystem/DVM/DVMSettings/DVMSettingsDBTable.java
Normal file
@@ -0,0 +1,149 @@
|
|||||||
|
package TestingSystem.DVM.DVMSettings;
|
||||||
|
import Common.Current;
|
||||||
|
import Common.Database.DBObject;
|
||||||
|
import Common.Database.iDBTable;
|
||||||
|
import Common.UI.DataSetControlForm;
|
||||||
|
import Common.UI.VisualiserStringList;
|
||||||
|
import Common.UI.Windows.Dialog.DBObjectDialog;
|
||||||
|
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||||
|
import TestingSystem.DVM.DVMConfiguration.UI.ConfigurationFields;
|
||||||
|
import TestingSystem.DVM.DVMSettings.UI.DVMSettingsFields;
|
||||||
|
public class DVMSettingsDBTable extends iDBTable<DVMSettings> {
|
||||||
|
public DVMSettingsDBTable() {
|
||||||
|
super(DVMSettings.class);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public Current CurrentName() {
|
||||||
|
return Current.DVMSettings;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getSingleDescription() {
|
||||||
|
return "параметры тестирования DVM системы";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getPluralDescription() {
|
||||||
|
return "параметры тестирования DVM системы";
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
@Override
|
||||||
|
public String[] getUIColumnNames() {
|
||||||
|
return new String[]{
|
||||||
|
"имя",
|
||||||
|
"автор",
|
||||||
|
"флаги",
|
||||||
|
"окружение",
|
||||||
|
"usr.par",
|
||||||
|
"куб",
|
||||||
|
"max",
|
||||||
|
"min dim",
|
||||||
|
"max dim"
|
||||||
|
};
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
@Override
|
||||||
|
public Object getFieldAt(DVMSettings object, int columnIndex) {
|
||||||
|
switch (columnIndex) {
|
||||||
|
case 2:
|
||||||
|
return object.description;
|
||||||
|
case 3:
|
||||||
|
return object.sender_name;
|
||||||
|
case 4:
|
||||||
|
return object.flags;
|
||||||
|
case 5:
|
||||||
|
return object.environments;
|
||||||
|
case 6:
|
||||||
|
return object.printUsrPar();
|
||||||
|
case 7:
|
||||||
|
return object.cube;
|
||||||
|
case 8:
|
||||||
|
return object.max_proc_count;
|
||||||
|
case 9:
|
||||||
|
return object.min_dim_proc_count;
|
||||||
|
case 10:
|
||||||
|
return object.max_dim_proc_count;
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//-
|
||||||
|
@Override
|
||||||
|
protected DataSetControlForm createUI() {
|
||||||
|
return new DataSetControlForm(this) {
|
||||||
|
@Override
|
||||||
|
public boolean hasCheckBox() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void AdditionalInitColumns() {
|
||||||
|
/*
|
||||||
|
columns.get(5).setRenderer(TableRenderers.RendererMultiline);
|
||||||
|
columns.get(5).setMaxWidth(500);
|
||||||
|
columns.get(7).setRenderer(TableRenderers.RendererMultiline);
|
||||||
|
columns.get(8).setRenderer(TableRenderers.RendererMultiline);
|
||||||
|
columns.get(15).setRenderer(TableRenderers.RendererMultiline);
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public DBObjectDialog<DVMSettings, DVMSettingsFields> getDialog() {
|
||||||
|
return new DBObjectDialog<DVMSettings, DVMSettingsFields>(DVMSettingsFields.class) {
|
||||||
|
@Override
|
||||||
|
public int getDefaultHeight() {
|
||||||
|
return 400;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public int getDefaultWidth() {
|
||||||
|
return 800;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void validateFields() {
|
||||||
|
int min = (int) fields.sMinDimProc.getValue();
|
||||||
|
int max = (int) fields.sMaxDimProc.getValue();
|
||||||
|
if (max < min)
|
||||||
|
Log.Writeln_("Некорректный диапазон размерностей: максимум меньше минимума");
|
||||||
|
if ((min == 0) && (max != 0) || (min != 0) && (max == 0))
|
||||||
|
Log.Writeln_("Некорректный диапазон размерностей. " +
|
||||||
|
"'0' допускается только одновременно на обеих границах,\n" +
|
||||||
|
"и подразумевает единственный запуск без решётки");
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void fillFields() {
|
||||||
|
fields.tfName.setText(Result.description);
|
||||||
|
//------->>>
|
||||||
|
fields.tfFlags.setText(Result.flags);
|
||||||
|
fields.tfEnvironments.setText(Result.environments);
|
||||||
|
//------->>>
|
||||||
|
fields.sMinDimProc.setValue(Result.min_dim_proc_count);
|
||||||
|
fields.sMaxDimProc.setValue(Result.max_dim_proc_count);
|
||||||
|
fields.cbCube.setSelected(Result.cube == 1);
|
||||||
|
//-
|
||||||
|
fields.sMaxProc.setValue(Result.max_proc_count);
|
||||||
|
fields.cbDvmStat.setSelected(Result.Is_DVM_STAT!=0);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void ProcessResult() {
|
||||||
|
Result.description = fields.tfName.getText();
|
||||||
|
Result.min_dim_proc_count = (int) fields.sMinDimProc.getValue();
|
||||||
|
Result.max_dim_proc_count = (int) fields.sMaxDimProc.getValue();
|
||||||
|
Result.cube = fields.cbCube.isSelected() ? 1 : 0;
|
||||||
|
Result.max_proc_count = (int) fields.sMaxProc.getValue();
|
||||||
|
Result.flags = fields.tfFlags.getText();
|
||||||
|
Result.environments = fields.tfEnvironments.getText();
|
||||||
|
Result.Is_DVM_STAT = fields.cbDvmStat.isSelected()?1:0;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public void SetReadonly() {
|
||||||
|
fields.tfName.setEnabled(false);
|
||||||
|
fields.sMinDimProc.setEnabled(false);
|
||||||
|
fields.sMaxDimProc.setEnabled(false);
|
||||||
|
fields.cbCube.setEnabled(false);
|
||||||
|
fields.sMaxProc.setEnabled(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public boolean ShowEditObjectDialog(DBObject object) {
|
||||||
|
return (Current.getAccount().CheckAccessRights(((DVMSettings) object).sender_address, null)) ? super.ShowEditObjectDialog(object) : ViewObject(object);
|
||||||
|
}
|
||||||
|
}
|
||||||
13
src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsBar.java
Normal file
13
src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsBar.java
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
package TestingSystem.DVM.DVMSettings.UI;
|
||||||
|
import Common.UI.Menus_2023.DataMenuBar;
|
||||||
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
public class DVMSettingsBar extends DataMenuBar {
|
||||||
|
public DVMSettingsBar() {
|
||||||
|
super("параметры тестированя",
|
||||||
|
|
||||||
|
PassCode_2021.PublishDVMSettings,
|
||||||
|
PassCode_2021.EditDVMSettings,
|
||||||
|
PassCode_2021.DeleteDVMSettings
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
227
src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsFields.form
Normal file
227
src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsFields.form
Normal file
@@ -0,0 +1,227 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<form xmlns="http://www.intellij.com/uidesigner/form/" version="1" bind-to-class="TestingSystem.DVM.DVMSettings.UI.DVMSettingsFields">
|
||||||
|
<grid id="27dc6" binding="content" layout-manager="BorderLayout" hgap="0" vgap="0">
|
||||||
|
<constraints>
|
||||||
|
<xy x="20" y="20" width="777" height="400"/>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
<border type="none"/>
|
||||||
|
<children>
|
||||||
|
<grid id="e9baf" layout-manager="GridLayoutManager" row-count="9" column-count="4" same-size-horizontally="false" same-size-vertically="false" hgap="-1" vgap="-1">
|
||||||
|
<margin top="0" left="0" bottom="0" right="0"/>
|
||||||
|
<constraints border-constraint="Center"/>
|
||||||
|
<properties/>
|
||||||
|
<border type="none"/>
|
||||||
|
<children>
|
||||||
|
<component id="8f4d9" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="0" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="название"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<vspacer id="2176d">
|
||||||
|
<constraints>
|
||||||
|
<grid row="8" column="0" row-span="1" col-span="1" vsize-policy="6" hsize-policy="1" anchor="0" fill="2" indent="0" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
</vspacer>
|
||||||
|
<component id="c61a7" class="javax.swing.JTextField" binding="tfName" custom-create="true">
|
||||||
|
<constraints>
|
||||||
|
<grid row="0" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
|
<minimum-size width="200" height="30"/>
|
||||||
|
<preferred-size width="238" height="30"/>
|
||||||
|
<maximum-size width="200" height="30"/>
|
||||||
|
</grid>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
</component>
|
||||||
|
<component id="a1d86" class="javax.swing.JSpinner" binding="sMinDimProc">
|
||||||
|
<constraints>
|
||||||
|
<grid row="5" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
|
<minimum-size width="100" height="30"/>
|
||||||
|
<preferred-size width="100" height="30"/>
|
||||||
|
<maximum-size width="100" height="30"/>
|
||||||
|
</grid>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
</component>
|
||||||
|
<component id="deae5" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="5" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="мин. число процессоров по измерению"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="61ffc" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="6" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="макс. число процессоров по измерению"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="380de" class="javax.swing.JSpinner" binding="sMaxDimProc">
|
||||||
|
<constraints>
|
||||||
|
<grid row="6" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
|
<minimum-size width="100" height="30"/>
|
||||||
|
<preferred-size width="100" height="30"/>
|
||||||
|
<maximum-size width="100" height="30"/>
|
||||||
|
</grid>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
</component>
|
||||||
|
<component id="9b010" class="javax.swing.JCheckBox" binding="cbCube">
|
||||||
|
<constraints>
|
||||||
|
<grid row="7" column="0" row-span="1" col-span="4" vsize-policy="3" hsize-policy="3" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<horizontalAlignment value="0"/>
|
||||||
|
<icon value="icons/NotPick.png"/>
|
||||||
|
<selectedIcon value="icons/Pick.png"/>
|
||||||
|
<text value="кубические решётки"/>
|
||||||
|
<toolTipText value="матрица с одинаковым размером измерений"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="bd5c7" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="4" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="макс. число процессоров"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="ad38a" class="javax.swing.JSpinner" binding="sMaxProc">
|
||||||
|
<constraints>
|
||||||
|
<grid row="4" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
|
<minimum-size width="100" height="30"/>
|
||||||
|
<preferred-size width="100" height="30"/>
|
||||||
|
<maximum-size width="100" height="30"/>
|
||||||
|
</grid>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
</component>
|
||||||
|
<component id="4d47b" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="1" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="флаги"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="45943" class="javax.swing.JLabel">
|
||||||
|
<constraints>
|
||||||
|
<grid row="2" column="0" row-span="1" col-span="1" vsize-policy="0" hsize-policy="0" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<text value="окружение"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="decc3" class="javax.swing.JTextField" binding="tfFlags">
|
||||||
|
<constraints>
|
||||||
|
<grid row="1" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
|
<minimum-size width="400" height="30"/>
|
||||||
|
<preferred-size width="400" height="30"/>
|
||||||
|
<maximum-size width="400" height="30"/>
|
||||||
|
</grid>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<editable value="false"/>
|
||||||
|
<font size="10"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="f6927" class="javax.swing.JTextField" binding="tfEnvironments">
|
||||||
|
<constraints>
|
||||||
|
<grid row="2" column="3" row-span="1" col-span="1" vsize-policy="0" hsize-policy="6" anchor="8" fill="1" indent="0" use-parent-layout="false">
|
||||||
|
<minimum-size width="400" height="30"/>
|
||||||
|
<preferred-size width="400" height="30"/>
|
||||||
|
<maximum-size width="400" height="30"/>
|
||||||
|
</grid>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<editable value="false"/>
|
||||||
|
<font size="10"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="265bb" class="javax.swing.JButton" binding="bAddFlags">
|
||||||
|
<constraints>
|
||||||
|
<grid row="1" column="1" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="0" indent="0" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<borderPainted value="false"/>
|
||||||
|
<icon value="icons/Menu/Regions.png"/>
|
||||||
|
<maximumSize width="30" height="30"/>
|
||||||
|
<minimumSize width="30" height="30"/>
|
||||||
|
<preferredSize width="30" height="30"/>
|
||||||
|
<text value=""/>
|
||||||
|
<toolTipText value="Редактировать флаги"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="77de1" class="javax.swing.JButton" binding="bAddEnvironments">
|
||||||
|
<constraints>
|
||||||
|
<grid row="2" column="1" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="0" indent="0" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<borderPainted value="false"/>
|
||||||
|
<icon value="icons/Menu/Regions.png"/>
|
||||||
|
<maximumSize width="30" height="30"/>
|
||||||
|
<minimumSize width="30" height="30"/>
|
||||||
|
<preferredSize width="30" height="30"/>
|
||||||
|
<text value=""/>
|
||||||
|
<toolTipText value="Добавить набор переменных окружения"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="7682" class="javax.swing.JButton" binding="bDeleteFlags">
|
||||||
|
<constraints>
|
||||||
|
<grid row="1" column="2" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="0" indent="0" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<borderPainted value="false"/>
|
||||||
|
<icon value="icons/Delete.png"/>
|
||||||
|
<maximumSize width="30" height="30"/>
|
||||||
|
<minimumSize width="30" height="30"/>
|
||||||
|
<preferredSize width="30" height="30"/>
|
||||||
|
<text value=""/>
|
||||||
|
<toolTipText value="Удалить флаги"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="6c384" class="javax.swing.JButton" binding="bDeleteEnvironment">
|
||||||
|
<constraints>
|
||||||
|
<grid row="2" column="2" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="0" fill="0" indent="0" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<borderPainted value="false"/>
|
||||||
|
<icon value="icons/Delete.png"/>
|
||||||
|
<maximumSize width="30" height="30"/>
|
||||||
|
<minimumSize width="30" height="30"/>
|
||||||
|
<preferredSize width="30" height="30"/>
|
||||||
|
<text value=""/>
|
||||||
|
<toolTipText value="Удалить переменную окружения"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
<component id="3f04c" class="javax.swing.JCheckBox" binding="cbDvmStat">
|
||||||
|
<constraints>
|
||||||
|
<grid row="3" column="0" row-span="1" col-span="1" vsize-policy="3" hsize-policy="3" anchor="8" fill="0" indent="2" use-parent-layout="false"/>
|
||||||
|
</constraints>
|
||||||
|
<properties>
|
||||||
|
<font name="Times New Roman" size="16" style="2"/>
|
||||||
|
<horizontalAlignment value="0"/>
|
||||||
|
<icon value="icons/NotPick.png"/>
|
||||||
|
<selectedIcon value="icons/Pick.png"/>
|
||||||
|
<text value="Is_DVM_STAT"/>
|
||||||
|
<toolTipText value="сбор статистики DVM после запуска"/>
|
||||||
|
</properties>
|
||||||
|
</component>
|
||||||
|
</children>
|
||||||
|
</grid>
|
||||||
|
</children>
|
||||||
|
</grid>
|
||||||
|
</form>
|
||||||
68
src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsFields.java
Normal file
68
src/TestingSystem/DVM/DVMSettings/UI/DVMSettingsFields.java
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
package TestingSystem.DVM.DVMSettings.UI;
|
||||||
|
import Common.Current;
|
||||||
|
import Common.UI.TextField.StyledTextField;
|
||||||
|
import Common.UI.Windows.Dialog.DialogFields;
|
||||||
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
import Visual_DVM_2021.Passes.Pass_2021;
|
||||||
|
|
||||||
|
import javax.swing.*;
|
||||||
|
import java.awt.*;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
public class DVMSettingsFields implements DialogFields {
|
||||||
|
private JPanel content;
|
||||||
|
public JTextField tfName;
|
||||||
|
public JSpinner sMinDimProc;
|
||||||
|
public JSpinner sMaxDimProc;
|
||||||
|
public JSpinner sMaxProc;
|
||||||
|
public JCheckBox cbCube;
|
||||||
|
public JTextField tfFlags;
|
||||||
|
public JTextField tfEnvironments;
|
||||||
|
private JButton bAddFlags;
|
||||||
|
private JButton bAddEnvironments;
|
||||||
|
private JButton bDeleteFlags;
|
||||||
|
private JButton bDeleteEnvironment;
|
||||||
|
public JCheckBox cbDvmStat;
|
||||||
|
@Override
|
||||||
|
public Component getContent() {
|
||||||
|
return content;
|
||||||
|
}
|
||||||
|
private void createUIComponents() {
|
||||||
|
// TODO: place custom component creation code here
|
||||||
|
tfName = new StyledTextField();
|
||||||
|
}
|
||||||
|
public DVMSettingsFields(){
|
||||||
|
sMinDimProc.setModel(new SpinnerNumberModel(1, 0, 128, 1));
|
||||||
|
sMaxDimProc.setModel(new SpinnerNumberModel(1, 0, 128, 1));
|
||||||
|
sMaxProc.setModel(new SpinnerNumberModel(0, 0, 128, 1));
|
||||||
|
bAddFlags.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
Pass_2021 pass = Pass_2021.passes.get(PassCode_2021.PickCompilerOptions);
|
||||||
|
if (pass.Do(Current.getCompiler())) {
|
||||||
|
tfFlags.setText((String)pass.target);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
bAddEnvironments.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
Pass_2021 pass = Pass_2021.passes.get(PassCode_2021.PickCompilerEnvironmentsForTesting);
|
||||||
|
if (pass.Do(Current.getCompiler()))
|
||||||
|
tfEnvironments.setText((String)pass.target);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
bDeleteFlags.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
tfFlags.setText("");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
bDeleteEnvironment.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
tfEnvironments.setText("");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,7 +1,9 @@
|
|||||||
package TestingSystem.DVM.DVMTasks;
|
package TestingSystem.DVM.DVMTasks;
|
||||||
|
import Common.Utils.Utils;
|
||||||
import TestingSystem.Common.Group.Group;
|
import TestingSystem.Common.Group.Group;
|
||||||
import TestingSystem.Common.Test.Test;
|
import TestingSystem.Common.Test.Test;
|
||||||
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
import com.google.gson.annotations.Expose;
|
import com.google.gson.annotations.Expose;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -10,14 +12,6 @@ public class DVMCompilationTask extends DVMTask {
|
|||||||
@Expose
|
@Expose
|
||||||
public List<DVMRunTask> runTasks = new Vector<>();
|
public List<DVMRunTask> runTasks = new Vector<>();
|
||||||
//-
|
//-
|
||||||
public DVMCompilationTask(DVMConfiguration configuration,
|
|
||||||
Group group,
|
|
||||||
Test test,
|
|
||||||
String flags_in
|
|
||||||
) {
|
|
||||||
super(configuration, group, test, flags_in);
|
|
||||||
maxtime = configuration.c_maxtime;
|
|
||||||
}
|
|
||||||
public DVMCompilationTask() {
|
public DVMCompilationTask() {
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -30,4 +24,51 @@ public class DVMCompilationTask extends DVMTask {
|
|||||||
res.add(arg.toString().replace("\n", "|")); //4
|
res.add(arg.toString().replace("\n", "|")); //4
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
//--
|
||||||
|
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 DVMCompilationTask(DVMConfiguration configuration, DVMSettings dvmSettings, Group group, Test test, int kernels_in){
|
||||||
|
super (configuration, group, test,checkFlags(dvmSettings.flags));
|
||||||
|
Vector<String> matrixes = dvmSettings.getMatrixes(test.max_dim);
|
||||||
|
String checkedEnvironments = checkEnvironments(dvmSettings.environments);
|
||||||
|
if (dvmSettings.flags.trim().equalsIgnoreCase("-s")) {
|
||||||
|
runTasks.add(new DVMRunTask(
|
||||||
|
configuration,
|
||||||
|
dvmSettings,
|
||||||
|
group,
|
||||||
|
test,
|
||||||
|
"",
|
||||||
|
flags,
|
||||||
|
checkedEnvironments,
|
||||||
|
kernels_in
|
||||||
|
));
|
||||||
|
} else
|
||||||
|
for (String matrix : matrixes) {
|
||||||
|
runTasks.add(new DVMRunTask(
|
||||||
|
configuration,
|
||||||
|
dvmSettings,
|
||||||
|
group,
|
||||||
|
test,
|
||||||
|
matrix,
|
||||||
|
flags,
|
||||||
|
checkedEnvironments,
|
||||||
|
kernels_in));
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import TestingSystem.Common.Group.Group;
|
|||||||
import TestingSystem.Common.Test.Test;
|
import TestingSystem.Common.Test.Test;
|
||||||
import TestingSystem.Common.Test.TestType;
|
import TestingSystem.Common.Test.TestType;
|
||||||
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
import com.google.gson.annotations.Expose;
|
import com.google.gson.annotations.Expose;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
@@ -40,11 +41,10 @@ public class DVMRunTask extends DVMTask {
|
|||||||
public TaskState compilation_state = TaskState.Waiting;
|
public TaskState compilation_state = TaskState.Waiting;
|
||||||
@Expose
|
@Expose
|
||||||
public double compilation_time = 0.0;
|
public double compilation_time = 0.0;
|
||||||
public DVMRunTask(DVMConfiguration configuration,
|
public DVMRunTask(DVMConfiguration configuration, DVMSettings settings,
|
||||||
Group group, Test test,
|
Group group, Test test,
|
||||||
String matrix_in, String flags_in,
|
String matrix_in, String flags_in,
|
||||||
String environments_in,
|
String environments_in,
|
||||||
String par_in,
|
|
||||||
int kernels_in
|
int kernels_in
|
||||||
) {
|
) {
|
||||||
super(configuration, group, test, flags_in);
|
super(configuration, group, test, flags_in);
|
||||||
@@ -53,12 +53,12 @@ public class DVMRunTask extends DVMTask {
|
|||||||
compilation_maxtime = configuration.c_maxtime;
|
compilation_maxtime = configuration.c_maxtime;
|
||||||
compilation_state = TaskState.Waiting;
|
compilation_state = TaskState.Waiting;
|
||||||
//инфа о запуске
|
//инфа о запуске
|
||||||
cube = configuration.cube;
|
cube = settings.cube;
|
||||||
min_dim = configuration.max_dim_proc_count;
|
min_dim = settings.max_dim_proc_count;
|
||||||
max_dim = configuration.max_dim_proc_count;
|
max_dim = settings.max_dim_proc_count;
|
||||||
maxtime = configuration.maxtime;
|
maxtime = configuration.maxtime;
|
||||||
environments = environments_in;
|
environments = environments_in;
|
||||||
usr_par = par_in;
|
usr_par = settings.getParamsText();
|
||||||
args = test.args;
|
args = test.args;
|
||||||
//---------
|
//---------
|
||||||
matrix = matrix_in;
|
matrix = matrix_in;
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package TestingSystem.SAPFOR.Json;
|
package TestingSystem.SAPFOR.Json;
|
||||||
import Common.Constants;
|
import Common.Constants;
|
||||||
|
import TestingSystem.SAPFOR.SapforSettings.SapforSettings;
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
import com.google.gson.annotations.Expose;
|
import com.google.gson.annotations.Expose;
|
||||||
|
|
||||||
@@ -11,9 +12,18 @@ public class SapforConfiguration_json implements Serializable {
|
|||||||
@Expose
|
@Expose
|
||||||
public int id = Constants.Nan;
|
public int id = Constants.Nan;
|
||||||
@Expose
|
@Expose
|
||||||
public String name="";
|
public String name = "";
|
||||||
@Expose
|
@Expose
|
||||||
public String flags = "";
|
public String flags = "";
|
||||||
@Expose
|
@Expose
|
||||||
public List<PassCode_2021> codes = new Vector<>();
|
public List<PassCode_2021> codes = new Vector<>();
|
||||||
|
//--
|
||||||
|
public SapforConfiguration_json() {
|
||||||
|
}
|
||||||
|
public SapforConfiguration_json(SapforSettings sapforSettings) {
|
||||||
|
id = sapforSettings.id;
|
||||||
|
name = sapforSettings.description;
|
||||||
|
flags = sapforSettings.flags;
|
||||||
|
codes = sapforSettings.getCheckedCodes();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,11 +1,14 @@
|
|||||||
package TestingSystem.SAPFOR.Json;
|
package TestingSystem.SAPFOR.Json;
|
||||||
import GlobalData.Tasks.TaskState;
|
import GlobalData.Tasks.TaskState;
|
||||||
import TestingSystem.Common.TasksPackageState;
|
import TestingSystem.Common.TasksPackageState;
|
||||||
|
import TestingSystem.Common.Test.Test;
|
||||||
|
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
|
||||||
import TestingSystem.SAPFOR.SapforPackage.SapforPackage;
|
import TestingSystem.SAPFOR.SapforPackage.SapforPackage;
|
||||||
import TestingSystem.SAPFOR.SapforTask.ComparisonState;
|
import TestingSystem.SAPFOR.SapforTask.ComparisonState;
|
||||||
import TestingSystem.SAPFOR.SapforTask.SapforTask;
|
import TestingSystem.SAPFOR.SapforTask.SapforTask;
|
||||||
import TestingSystem.SAPFOR.SapforTasksPackage.UI.PackageComparisonSummary;
|
import TestingSystem.SAPFOR.SapforTasksPackage.UI.PackageComparisonSummary;
|
||||||
import TestingSystem.SAPFOR.SapforTasksPackage.UI.PackageSummary;
|
import TestingSystem.SAPFOR.SapforTasksPackage.UI.PackageSummary;
|
||||||
|
import TestingSystem.SAPFOR.ServerSapfor.ServerSapfor;
|
||||||
import com.google.gson.annotations.Expose;
|
import com.google.gson.annotations.Expose;
|
||||||
|
|
||||||
import javax.swing.tree.DefaultMutableTreeNode;
|
import javax.swing.tree.DefaultMutableTreeNode;
|
||||||
@@ -13,6 +16,7 @@ import java.io.File;
|
|||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.nio.file.Paths;
|
import java.nio.file.Paths;
|
||||||
import java.util.Comparator;
|
import java.util.Comparator;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
public class SapforPackage_json implements Serializable {
|
public class SapforPackage_json implements Serializable {
|
||||||
@@ -31,9 +35,9 @@ public class SapforPackage_json implements Serializable {
|
|||||||
public int getMaxTaskId() {
|
public int getMaxTaskId() {
|
||||||
return max_task_id++;
|
return max_task_id++;
|
||||||
}
|
}
|
||||||
//--
|
//--в отличие от пакета двм,где достаточно инфы о задачах, тут есть инфа о тестах и конфигурациях
|
||||||
@Expose
|
@Expose
|
||||||
public List<SapforTestingSet_json> testingSets = new Vector<>(); //сет = конфигурации + тесты.
|
public List<SapforTestingSet_json> testingSets = new Vector<>(); //по факту, сет один. Наследие формирования пакетов.
|
||||||
@Expose
|
@Expose
|
||||||
public List<SapforTask> tasks = new Vector<>();
|
public List<SapforTask> tasks = new Vector<>();
|
||||||
//--
|
//--
|
||||||
@@ -161,8 +165,8 @@ public class SapforPackage_json implements Serializable {
|
|||||||
}
|
}
|
||||||
public Vector<String> getConfigurationsNames() {
|
public Vector<String> getConfigurationsNames() {
|
||||||
Vector<String> names = new Vector<>();
|
Vector<String> names = new Vector<>();
|
||||||
for (SapforTestingSet_json set: testingSets){
|
for (SapforTestingSet_json set : testingSets) {
|
||||||
for (SapforConfiguration_json configurationJson: set.configurations){
|
for (SapforConfiguration_json configurationJson : set.configurations) {
|
||||||
if (!names.contains(configurationJson.name))
|
if (!names.contains(configurationJson.name))
|
||||||
names.add(configurationJson.name);
|
names.add(configurationJson.name);
|
||||||
}
|
}
|
||||||
@@ -175,10 +179,33 @@ public class SapforPackage_json implements Serializable {
|
|||||||
});
|
});
|
||||||
return names;
|
return names;
|
||||||
}
|
}
|
||||||
public TasksPackageState getState(){
|
public TasksPackageState getState() {
|
||||||
for (SapforTask task: tasks)
|
for (SapforTask task : tasks)
|
||||||
if (!task.state.equals(TaskState.Done))
|
if (!task.state.equals(TaskState.Done))
|
||||||
return TasksPackageState.DoneWithErrors;
|
return TasksPackageState.DoneWithErrors;
|
||||||
return TasksPackageState.Done;
|
return TasksPackageState.Done;
|
||||||
}
|
}
|
||||||
|
//---
|
||||||
|
public SapforPackage_json() {
|
||||||
|
}
|
||||||
|
public SapforPackage_json(ServerSapfor serverSapfor, LinkedHashMap<String, Test> testsByDescriptions, Vector<SapforConfiguration> configurations, int kernels_in) {
|
||||||
|
sapfor_drv=serverSapfor.call_command;
|
||||||
|
kernels = kernels_in;
|
||||||
|
//рудимент от формирования пакетов. возможно, объединить с текущим классом.
|
||||||
|
SapforTestingSet_json testingSet = new SapforTestingSet_json(testsByDescriptions, configurations);
|
||||||
|
testingSet.id = getMaxSetId();
|
||||||
|
testingSets.add(testingSet);
|
||||||
|
//формирование задач
|
||||||
|
LinkedHashMap<String, SapforTask> sortedTasks = new LinkedHashMap<>();
|
||||||
|
for (SapforConfiguration_json sapforConfiguration_json : testingSet.configurations) {
|
||||||
|
for (SapforTest_json test : testingSet.tests) {
|
||||||
|
SapforTask task = new SapforTask(testingSet, test, sapforConfiguration_json);
|
||||||
|
if (!sortedTasks.containsKey(task.getUniqueKey())) {
|
||||||
|
task.id = getMaxTaskId();
|
||||||
|
sortedTasks.put(task.getUniqueKey(), task);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
tasks.addAll(sortedTasks.values());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,6 @@
|
|||||||
package TestingSystem.SAPFOR.Json;
|
package TestingSystem.SAPFOR.Json;
|
||||||
|
import Common.Global;
|
||||||
|
import TestingSystem.Common.Test.Test;
|
||||||
import com.google.gson.annotations.Expose;
|
import com.google.gson.annotations.Expose;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
@@ -9,4 +11,10 @@ public class SapforTest_json implements Serializable {
|
|||||||
public String description = "";
|
public String description = "";
|
||||||
@Expose
|
@Expose
|
||||||
public String group_description = "";
|
public String group_description = "";
|
||||||
|
public SapforTest_json(){}
|
||||||
|
public SapforTest_json(Test test){
|
||||||
|
id = test.id;
|
||||||
|
description = test.description;
|
||||||
|
group_description = Global.testingServer.db.groups.get(test.group_id).description;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,16 @@
|
|||||||
package TestingSystem.SAPFOR.Json;
|
package TestingSystem.SAPFOR.Json;
|
||||||
import Common.Constants;
|
import Common.Constants;
|
||||||
|
import Common.UI.VisualCache.SapforConfigurationCache;
|
||||||
|
import Common.UI.VisualCache.VisualCaches;
|
||||||
|
import TestingSystem.Common.Test.Test;
|
||||||
|
import TestingSystem.SAPFOR.SapforConfiguration.SapforConfiguration;
|
||||||
|
import TestingSystem.SAPFOR.SapforSettings.SapforSettings;
|
||||||
import TestingSystem.SAPFOR.SapforTask.SapforTask;
|
import TestingSystem.SAPFOR.SapforTask.SapforTask;
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
import com.google.gson.annotations.Expose;
|
import com.google.gson.annotations.Expose;
|
||||||
|
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
public class SapforTestingSet_json implements Serializable {
|
public class SapforTestingSet_json implements Serializable {
|
||||||
@@ -13,31 +19,14 @@ public class SapforTestingSet_json implements Serializable {
|
|||||||
@Expose
|
@Expose
|
||||||
public List<SapforTest_json> tests = new Vector<>();
|
public List<SapforTest_json> tests = new Vector<>();
|
||||||
@Expose
|
@Expose
|
||||||
public List<SapforConfiguration_json> configurations = new Vector<>();//todo переименовать в настройки?
|
public List<SapforConfiguration_json> configurations = new Vector<>();
|
||||||
public Vector<SapforTask> createTasks() {
|
public SapforTestingSet_json(){}
|
||||||
Vector<SapforTask> tasks = new Vector<>();
|
public SapforTestingSet_json(LinkedHashMap<String, Test> testsByDescriptions, Vector<SapforConfiguration> sapforConfigurations) {
|
||||||
//-
|
for (Test test : testsByDescriptions.values())
|
||||||
for (SapforConfiguration_json sapforConfiguration_json : configurations) {
|
tests.add(new SapforTest_json(test));
|
||||||
for (SapforTest_json test : tests) {
|
for (SapforConfiguration configuration : sapforConfigurations) {
|
||||||
SapforTask task = new SapforTask();
|
for (SapforSettings sapforSettings : ((SapforConfigurationCache) VisualCaches.GetCache(configuration)).getSettings())
|
||||||
//--
|
configurations.add(new SapforConfiguration_json(sapforSettings));
|
||||||
task.id = Constants.Nan;
|
|
||||||
task.sapfortaskspackage_id = Constants.Nan;
|
|
||||||
//-- unique key--
|
|
||||||
task.group_description = test.group_description;
|
|
||||||
task.test_description = test.description;
|
|
||||||
task.sapfor_configuration_id = sapforConfiguration_json.id;
|
|
||||||
//---------------
|
|
||||||
task.flags = sapforConfiguration_json.flags;
|
|
||||||
task.set_id = id;
|
|
||||||
tasks.add(task);
|
|
||||||
Vector<String> codes_s = new Vector<>();
|
|
||||||
for (PassCode_2021 code : sapforConfiguration_json.codes)
|
|
||||||
codes_s.add(code.toString());
|
|
||||||
task.codes = String.join(" ", codes_s);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//-
|
|
||||||
return tasks;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ public class SapforConfigurationDBTable extends iDBTable<SapforConfiguration> {
|
|||||||
case 5:
|
case 5:
|
||||||
return object.kernels;
|
return object.kernels;
|
||||||
case 6:
|
case 6:
|
||||||
return cache.getSettingsDescriptions();
|
return cache.settingsSummary;
|
||||||
case 7:
|
case 7:
|
||||||
return cache.groupsSummary;
|
return cache.groupsSummary;
|
||||||
case 8:
|
case 8:
|
||||||
|
|||||||
@@ -33,26 +33,6 @@ public class SapforPackage extends TestingPackage<SapforPackage_json> {
|
|||||||
public SapforPackage(SapforPackage sapforPackage) {
|
public SapforPackage(SapforPackage sapforPackage) {
|
||||||
SynchronizeFields(sapforPackage);
|
SynchronizeFields(sapforPackage);
|
||||||
}
|
}
|
||||||
public SapforPackage(Account account, ServerSapfor serverSapfor, int kernels_in) {
|
|
||||||
id = Constants.Nan;
|
|
||||||
//-
|
|
||||||
sender_name = account.name;
|
|
||||||
sender_address = account.email;
|
|
||||||
//-
|
|
||||||
sapforId = serverSapfor.id;
|
|
||||||
//-
|
|
||||||
drv = serverSapfor.call_command;
|
|
||||||
version = serverSapfor.version;
|
|
||||||
kernels = kernels_in;//Global.properties.TestingKernels;
|
|
||||||
needsEmail = Global.properties.EmailOnTestingProgress ? 1 : 0;
|
|
||||||
///-------------------------------
|
|
||||||
package_json = new SapforPackage_json();
|
|
||||||
package_json.kernels = kernels;
|
|
||||||
package_json.sapfor_drv = serverSapfor.call_command;
|
|
||||||
//-
|
|
||||||
state = TasksPackageState.Queued;
|
|
||||||
//-
|
|
||||||
}
|
|
||||||
@Override
|
@Override
|
||||||
public void SynchronizeFields(DBObject src) {
|
public void SynchronizeFields(DBObject src) {
|
||||||
super.SynchronizeFields(src);
|
super.SynchronizeFields(src);
|
||||||
@@ -75,21 +55,6 @@ public class SapforPackage extends TestingPackage<SapforPackage_json> {
|
|||||||
saveJson();
|
saveJson();
|
||||||
package_json = null; // объект больше не нужен.
|
package_json = null; // объект больше не нужен.
|
||||||
}
|
}
|
||||||
//-проверка, какие задачи из набора, не пересекаются с уже имеющимися в пакете.
|
|
||||||
public Vector<SapforTask> getActualTestingSetTasks(SapforTestingSet_json testingSet) {
|
|
||||||
Vector<SapforTask> possible_tasks = testingSet.createTasks();
|
|
||||||
Vector<String> keys = package_json.getTasksKeys();
|
|
||||||
Vector<SapforTask> new_tasks = new Vector<>();
|
|
||||||
//----
|
|
||||||
for (SapforTask task : possible_tasks) {
|
|
||||||
String key = task.getUniqueKey();
|
|
||||||
if (!keys.contains(key)) {
|
|
||||||
keys.add(key);
|
|
||||||
new_tasks.add(task);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return new_tasks;
|
|
||||||
}
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isVisible() {
|
public boolean isVisible() {
|
||||||
return (!SapforPackageDBTable.filterMyOnly || Current.getAccount().email.equals(sender_address)) &&
|
return (!SapforPackageDBTable.filterMyOnly || Current.getAccount().email.equals(sender_address)) &&
|
||||||
@@ -112,8 +77,6 @@ public class SapforPackage extends TestingPackage<SapforPackage_json> {
|
|||||||
version = serverSapfor.version;
|
version = serverSapfor.version;
|
||||||
///-------------------------------
|
///-------------------------------
|
||||||
needsEmail = neeedsEmail_in;
|
needsEmail = neeedsEmail_in;
|
||||||
package_json = new SapforPackage_json();
|
|
||||||
package_json.sapfor_drv = serverSapfor.call_command;
|
|
||||||
//-
|
//-
|
||||||
state = TasksPackageState.Queued;
|
state = TasksPackageState.Queued;
|
||||||
//--
|
//--
|
||||||
@@ -141,50 +104,9 @@ public class SapforPackage extends TestingPackage<SapforPackage_json> {
|
|||||||
valid= Log.isEmpty();
|
valid= Log.isEmpty();
|
||||||
//формирование задач.
|
//формирование задач.
|
||||||
if (valid){
|
if (valid){
|
||||||
//--
|
package_json= new SapforPackage_json(serverSapfor, testsByDescriptions, configurations, kernels);
|
||||||
tasksCount=0;
|
tasksCount = package_json.tasks.size();
|
||||||
package_json.kernels = kernels;
|
|
||||||
//--
|
|
||||||
SapforTestingSet_json testingSet = new SapforTestingSet_json();
|
|
||||||
Vector<SapforTask> new_tasks = new Vector<>();
|
|
||||||
//--
|
|
||||||
testingSet.id = package_json.getMaxSetId();
|
|
||||||
for (Test test : testsByDescriptions.values()) {
|
|
||||||
SapforTest_json test_json = new SapforTest_json();
|
|
||||||
test_json.id = test.id;
|
|
||||||
test_json.description = test.description;
|
|
||||||
test_json.group_description = Global.testingServer.db.groups.get(test.group_id).description;
|
|
||||||
testingSet.tests.add(test_json);
|
|
||||||
}
|
|
||||||
for (SapforConfiguration configuration : configurations) {
|
|
||||||
SapforConfigurationCache cache = (SapforConfigurationCache) VisualCaches.GetCache(configuration);
|
|
||||||
Vector<SapforSettings> settingsVector=cache.getSettings();
|
|
||||||
//--
|
|
||||||
for (SapforSettings sapforSettings: settingsVector) {
|
|
||||||
//--
|
|
||||||
SapforConfiguration_json settings_json = new SapforConfiguration_json();
|
|
||||||
settings_json.id = sapforSettings.id;
|
|
||||||
settings_json.name = sapforSettings.description;
|
|
||||||
settings_json.flags = sapforSettings.flags;
|
|
||||||
Vector<PassCode_2021> codes = sapforSettings.getCodes();
|
|
||||||
//--- коррекцию кода нельзя вызвать если инклуды есть. в общем случае.
|
|
||||||
if (!codes.firstElement().equals(PassCode_2021.SPF_InsertIncludesPass))
|
|
||||||
settings_json.codes.add(PassCode_2021.SPF_CorrectCodeStylePass); //всегда добавляется.
|
|
||||||
//--
|
|
||||||
settings_json.codes.addAll(codes);
|
|
||||||
//--->>
|
|
||||||
testingSet.configurations.add(settings_json);
|
|
||||||
//-->>
|
|
||||||
}
|
|
||||||
}
|
|
||||||
new_tasks = getActualTestingSetTasks(testingSet);
|
|
||||||
saveConfigurationsAsJson(configurations);
|
saveConfigurationsAsJson(configurations);
|
||||||
package_json.testingSets.add(testingSet);
|
|
||||||
for (SapforTask task : new_tasks) {
|
|
||||||
task.id = package_json.getMaxTaskId();
|
|
||||||
package_json.tasks.add(task);
|
|
||||||
}
|
|
||||||
tasksCount += new_tasks.size();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import TestingSystem.Common.Settings.Settings;
|
|||||||
import TestingSystem.SAPFOR.SapforSettingsCommand.SapforSettingsCommand;
|
import TestingSystem.SAPFOR.SapforSettingsCommand.SapforSettingsCommand;
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
public class SapforSettings extends Settings {
|
public class SapforSettings extends Settings {
|
||||||
//настройки.
|
//настройки.
|
||||||
@@ -54,6 +55,12 @@ public class SapforSettings extends Settings {
|
|||||||
if (command.sapforsettings_id == id) res.add(command.passCode);
|
if (command.sapforsettings_id == id) res.add(command.passCode);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
public List<PassCode_2021> getCheckedCodes(){
|
||||||
|
Vector<PassCode_2021> res = getCodes();
|
||||||
|
if (!res.firstElement().equals(PassCode_2021.SPF_InsertIncludesPass))
|
||||||
|
res.insertElementAt(PassCode_2021.SPF_CorrectCodeStylePass,0); //всегда добавляется.
|
||||||
|
return res;
|
||||||
|
}
|
||||||
@Override
|
@Override
|
||||||
public boolean validate(TextLog Log) {
|
public boolean validate(TextLog Log) {
|
||||||
boolean res = true;
|
boolean res = true;
|
||||||
|
|||||||
@@ -3,8 +3,7 @@ import Common.Constants;
|
|||||||
import Common.Database.DBObject;
|
import Common.Database.DBObject;
|
||||||
import Common.Utils.Utils;
|
import Common.Utils.Utils;
|
||||||
import GlobalData.Tasks.TaskState;
|
import GlobalData.Tasks.TaskState;
|
||||||
import TestingSystem.SAPFOR.Json.SapforVersion_json;
|
import TestingSystem.SAPFOR.Json.*;
|
||||||
import TestingSystem.SAPFOR.Json.VersionComparisonState;
|
|
||||||
import TestingSystem.SAPFOR.SapforTasksPackage.UI.SapforPackageTreeNode;
|
import TestingSystem.SAPFOR.SapforTasksPackage.UI.SapforPackageTreeNode;
|
||||||
import TestingSystem.SAPFOR.SapforTasksPackage.UI.SapforTaskNode;
|
import TestingSystem.SAPFOR.SapforTasksPackage.UI.SapforTaskNode;
|
||||||
import TestingSystem.SAPFOR.SapforTasksPackage.UI.VersionNode;
|
import TestingSystem.SAPFOR.SapforTasksPackage.UI.VersionNode;
|
||||||
@@ -223,4 +222,20 @@ public class SapforTask extends DBObject {
|
|||||||
res.add(versions_info);
|
res.add(versions_info);
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
//-
|
||||||
|
public SapforTask(SapforTestingSet_json testingSet, SapforTest_json test, SapforConfiguration_json sapforConfiguration_json) {
|
||||||
|
id = Constants.Nan;
|
||||||
|
set_id = testingSet.id;
|
||||||
|
sapfortaskspackage_id = Constants.Nan;
|
||||||
|
//-- unique key--
|
||||||
|
group_description = test.group_description;
|
||||||
|
test_description = test.description;
|
||||||
|
sapfor_configuration_id = sapforConfiguration_json.id;
|
||||||
|
//---------------
|
||||||
|
flags = sapforConfiguration_json.flags;
|
||||||
|
Vector<String> codes_s = new Vector<>();
|
||||||
|
for (PassCode_2021 code : sapforConfiguration_json.codes)
|
||||||
|
codes_s.add(code.toString());
|
||||||
|
codes = String.join(" ", codes_s);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -262,7 +262,7 @@ public class SapforTestingPlanner extends TestingPlanner<SapforPackage> {
|
|||||||
UpdateSapforState(ServerSapforState.Done);
|
UpdateSapforState(ServerSapforState.Done);
|
||||||
EmailSapforAssembly(current_version, true, sapforOut, sapforErr);
|
EmailSapforAssembly(current_version, true, sapforOut, sapforErr);
|
||||||
//запуск автоматического тестирования.
|
//запуск автоматического тестирования.
|
||||||
ServerCommand(ServerCode.PerformAutoSapforTesting, String.valueOf(sapfor.id));
|
ServerCommand(ServerCode.PerformAutoSapforTesting, String.valueOf(sapfor.id), null);
|
||||||
} else {
|
} else {
|
||||||
UpdateSapforState(ServerSapforState.DoneWithErrors);
|
UpdateSapforState(ServerSapforState.DoneWithErrors);
|
||||||
EmailSapforAssembly(current_version, false, sapforOut, sapforErr);
|
EmailSapforAssembly(current_version, false, sapforOut, sapforErr);
|
||||||
|
|||||||
@@ -149,6 +149,7 @@ public class CloneSapforPackage extends AddObjectPass<SapforPackage> {
|
|||||||
target.package_json.sapfor_drv = target.drv;
|
target.package_json.sapfor_drv = target.drv;
|
||||||
//--
|
//--
|
||||||
//- заполнение testing_set
|
//- заполнение testing_set
|
||||||
|
/*
|
||||||
for (SapforPackage_json srcPackage : src_jsons) {
|
for (SapforPackage_json srcPackage : src_jsons) {
|
||||||
//--
|
//--
|
||||||
for (SapforTestingSet_json src : srcPackage.testingSets) {
|
for (SapforTestingSet_json src : srcPackage.testingSets) {
|
||||||
@@ -158,9 +159,10 @@ public class CloneSapforPackage extends AddObjectPass<SapforPackage> {
|
|||||||
if (!new_tasks.isEmpty()) {
|
if (!new_tasks.isEmpty()) {
|
||||||
target.package_json.testingSets.add(dst);
|
target.package_json.testingSets.add(dst);
|
||||||
target.package_json.tasks.addAll(new_tasks);
|
target.package_json.tasks.addAll(new_tasks);
|
||||||
|
} PerformAutoSapforTesting
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
*/
|
||||||
for (SapforTask task : target.package_json.tasks) {
|
for (SapforTask task : target.package_json.tasks) {
|
||||||
task.id = target.package_json.getMaxTaskId();
|
task.id = target.package_json.getMaxTaskId();
|
||||||
}
|
}
|
||||||
|
|||||||
10
src/Visual_DVM_2021/Passes/All/DeleteDVMSettings.java
Normal file
10
src/Visual_DVM_2021/Passes/All/DeleteDVMSettings.java
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
package Visual_DVM_2021.Passes.All;
|
||||||
|
import Common.Global;
|
||||||
|
import TestingSystem.Common.TestingServer;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
|
import Visual_DVM_2021.Passes.Server.DeleteServerObjects;
|
||||||
|
public class DeleteDVMSettings extends DeleteServerObjects<TestingServer, DVMSettings> {
|
||||||
|
public DeleteDVMSettings() {
|
||||||
|
super(Global.testingServer, DVMSettings.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
10
src/Visual_DVM_2021/Passes/All/EditDVMSettings.java
Normal file
10
src/Visual_DVM_2021/Passes/All/EditDVMSettings.java
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
package Visual_DVM_2021.Passes.All;
|
||||||
|
import Common.Global;
|
||||||
|
import TestingSystem.Common.TestingServer;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
|
import Visual_DVM_2021.Passes.Server.EditServerObject;
|
||||||
|
public class EditDVMSettings extends EditServerObject<TestingServer, DVMSettings> {
|
||||||
|
public EditDVMSettings() {
|
||||||
|
super(Global.testingServer, DVMSettings.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
11
src/Visual_DVM_2021/Passes/All/PublishDVMSettings.java
Normal file
11
src/Visual_DVM_2021/Passes/All/PublishDVMSettings.java
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
package Visual_DVM_2021.Passes.All;
|
||||||
|
import Common.Global;
|
||||||
|
import TestingSystem.Common.Settings.Settings;
|
||||||
|
import TestingSystem.Common.TestingServer;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
|
import Visual_DVM_2021.Passes.Server.PublishServerObject;
|
||||||
|
public class PublishDVMSettings extends PublishServerObject<TestingServer, DVMSettings> {
|
||||||
|
public PublishDVMSettings() {
|
||||||
|
super(Global.testingServer, DVMSettings.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,9 +1,29 @@
|
|||||||
package Visual_DVM_2021.Passes.All;
|
package Visual_DVM_2021.Passes.All;
|
||||||
import Common.Current;
|
import Common.Current;
|
||||||
|
import Common.Global;
|
||||||
|
import Common.UI.VisualCache.DVMConfigurationCache;
|
||||||
|
import Common.UI.VisualCache.VisualCaches;
|
||||||
|
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
|
import TestingSystem.SAPFOR.SapforSettings.SapforSettings;
|
||||||
import Visual_DVM_2021.Passes.ShowCurrentConfigurationTests;
|
import Visual_DVM_2021.Passes.ShowCurrentConfigurationTests;
|
||||||
public class ShowCurrentDVMConfigurationTests extends ShowCurrentConfigurationTests {
|
|
||||||
|
import java.util.Vector;
|
||||||
|
public class ShowCurrentDVMConfigurationTests extends ShowCurrentConfigurationTests<DVMConfiguration> {
|
||||||
@Override
|
@Override
|
||||||
public Current currentName() {
|
public Current currentName() {
|
||||||
return Current.DVMConfiguration;
|
return Current.DVMConfiguration;
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
protected void showDone() throws Exception {
|
||||||
|
super.showDone();
|
||||||
|
DVMConfigurationCache cache = (DVMConfigurationCache) VisualCaches.GetCache(target);
|
||||||
|
Vector<DVMSettings> settings = cache.getSettings();
|
||||||
|
for (DVMSettings s: settings)
|
||||||
|
s.Select(true);
|
||||||
|
//--
|
||||||
|
if (!settings.isEmpty()){
|
||||||
|
Global.testingServer.db.sapforSettings.ShowUI(settings.lastElement().id);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,7 +2,7 @@ package Visual_DVM_2021.Passes.All;
|
|||||||
import Common.Current;
|
import Common.Current;
|
||||||
import Common.Global;
|
import Common.Global;
|
||||||
import Common.UI.UI;
|
import Common.UI.UI;
|
||||||
import Common.UI.VisualCache.ConfigurationCache;
|
import Common.UI.VisualCache.DVMConfigurationCache;
|
||||||
import Common.UI.VisualCache.VisualCaches;
|
import Common.UI.VisualCache.VisualCaches;
|
||||||
import Common.Utils.Utils;
|
import Common.Utils.Utils;
|
||||||
import GlobalData.Compiler.CompilerType;
|
import GlobalData.Compiler.CompilerType;
|
||||||
@@ -13,6 +13,7 @@ import TestingSystem.Common.Test.Test;
|
|||||||
import TestingSystem.Common.TestingServer;
|
import TestingSystem.Common.TestingServer;
|
||||||
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
import TestingSystem.DVM.DVMConfiguration.DVMConfiguration;
|
||||||
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
import TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||||
|
import TestingSystem.DVM.DVMSettings.DVMSettings;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
import TestingSystem.DVM.DVMTasks.DVMCompilationTask;
|
||||||
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
@@ -21,12 +22,6 @@ import Visual_DVM_2021.Passes.Server.PublishServerObject;
|
|||||||
import java.util.LinkedHashMap;
|
import java.util.LinkedHashMap;
|
||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
public class StartSelectedDVMConfigurations extends PublishServerObject<TestingServer, DVMPackage> {
|
public class StartSelectedDVMConfigurations 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 StartSelectedDVMConfigurations() {
|
public StartSelectedDVMConfigurations() {
|
||||||
super(Global.testingServer, DVMPackage.class);
|
super(Global.testingServer, DVMPackage.class);
|
||||||
}
|
}
|
||||||
@@ -35,89 +30,11 @@ public class StartSelectedDVMConfigurations extends PublishServerObject<TestingS
|
|||||||
return "/icons/Start.png";
|
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
|
@Override
|
||||||
protected boolean canStart(Object... args) throws Exception {
|
protected boolean canStart(Object... args) throws Exception {
|
||||||
configurations = Global.testingServer.db.dvm_configurations.getCheckedOrCurrent();
|
|
||||||
groups = new Vector<>();
|
|
||||||
tests = new Vector<>();
|
|
||||||
testByGroups = new LinkedHashMap<>();
|
|
||||||
tasks = new Vector<>();
|
|
||||||
tasks_count = 0;
|
|
||||||
//---
|
|
||||||
if (!Current.getAccount().CheckRegistered(Log)) {
|
if (!Current.getAccount().CheckRegistered(Log)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (configurations.isEmpty()) {
|
|
||||||
Log.Writeln_("Не отмечено ни одной конфигурации, или отсутствует текущая конфигурация.");
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
if (!Current.Check(Log, Current.Machine, Current.User, Current.Compiler))
|
if (!Current.Check(Log, Current.Machine, Current.User, Current.Compiler))
|
||||||
return false;
|
return false;
|
||||||
if (!Current.getMachine().type.equals(MachineType.Server)) {
|
if (!Current.getMachine().type.equals(MachineType.Server)) {
|
||||||
@@ -134,50 +51,26 @@ public class StartSelectedDVMConfigurations extends PublishServerObject<TestingS
|
|||||||
}
|
}
|
||||||
if (!Current.getCompiler().versionLoaded)
|
if (!Current.getCompiler().versionLoaded)
|
||||||
passes.get(PassCode_2021.ShowCompilerVersion).Do(Current.getCompiler(), false);
|
passes.get(PassCode_2021.ShowCompilerVersion).Do(Current.getCompiler(), false);
|
||||||
//--
|
//-----
|
||||||
int max_kernels = 1;
|
Vector<DVMConfiguration> configurations = Global.testingServer.db.dvm_configurations.getCheckedOrCurrent();
|
||||||
for (DVMConfiguration configuration : configurations){
|
if (configurations.isEmpty()) {
|
||||||
max_kernels = Math.max(configuration.kernels, max_kernels);
|
Log.Writeln_("Не отмечено ни одной конфигурации, или отсутствует текущая конфигурация.");
|
||||||
|
return false;
|
||||||
}
|
}
|
||||||
target = new DVMPackage(
|
//---
|
||||||
|
target= new DVMPackage(
|
||||||
Current.getAccount(),
|
Current.getAccount(),
|
||||||
Current.getMachine(),
|
Current.getMachine(),
|
||||||
Current.getUser(),
|
Current.getUser(),
|
||||||
Current.getCompiler(),
|
Current.getCompiler(),
|
||||||
max_kernels
|
configurations,
|
||||||
|
Global.properties.EmailOnTestingProgress ? 1 : 0
|
||||||
);
|
);
|
||||||
for (DVMConfiguration configuration : configurations) {
|
|
||||||
ConfigurationCache cache = (ConfigurationCache) VisualCaches.GetCache(configuration);
|
|
||||||
groups = cache.getGroups();
|
|
||||||
tests = cache.getTests();
|
|
||||||
//-
|
|
||||||
for (Group group : groups) {
|
|
||||||
Vector<Test> groupTests = new Vector<>();
|
|
||||||
for (Test test : tests) {
|
|
||||||
if (test.group_id == group.id)
|
|
||||||
groupTests.add(test);
|
|
||||||
}
|
|
||||||
testByGroups.put(group.id, groupTests);
|
|
||||||
}
|
|
||||||
//--
|
|
||||||
for (Group group : groups) {
|
|
||||||
Vector<Test> groupTests = testByGroups.get(group.id);
|
|
||||||
for (Test test : groupTests)
|
|
||||||
tasks.addAll(createTasksCGT(configuration, group, test));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//----
|
//----
|
||||||
|
if (target.tasksCount == 0) {
|
||||||
if (tasks_count == 0) {
|
|
||||||
Log.Writeln_("Задач не найдено.");
|
Log.Writeln_("Задач не найдено.");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (UI.Question("Будет запущено " + tasks_count + " задач. Продолжить")){
|
return UI.Question("Будет запущено " + target.tasksCount + " задач. Продолжить");
|
||||||
target.saveConfigurationsAsJson(configurations);
|
|
||||||
target.saveTasks(tasks, tasks_count);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -41,6 +41,7 @@ public class SynchronizeTests extends TestingSystemPass<Object> {
|
|||||||
server.db.dvmPackages.ClearUI();
|
server.db.dvmPackages.ClearUI();
|
||||||
server.db.sapforPackages.ClearUI();
|
server.db.sapforPackages.ClearUI();
|
||||||
server.db.sapforSettings.ClearUI();
|
server.db.sapforSettings.ClearUI();
|
||||||
|
server.db.dvmSettings.ClearUI();
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
protected void ServerAction() throws Exception {
|
protected void ServerAction() throws Exception {
|
||||||
@@ -68,6 +69,7 @@ public class SynchronizeTests extends TestingSystemPass<Object> {
|
|||||||
server.db.dvmPackages.ShowUI();
|
server.db.dvmPackages.ShowUI();
|
||||||
server.db.sapforPackages.ShowUI();
|
server.db.sapforPackages.ShowUI();
|
||||||
server.db.sapforSettings.ShowUI();
|
server.db.sapforSettings.ShowUI();
|
||||||
|
server.db.dvmSettings.ShowUI();
|
||||||
server.db.RestoreLastSelections(); //---- ? объединить с RestoreCredentials
|
server.db.RestoreLastSelections(); //---- ? объединить с RestoreCredentials
|
||||||
UI.getMainWindow().ShowCheckedTestsCount();
|
UI.getMainWindow().ShowCheckedTestsCount();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -348,25 +348,34 @@ public enum PassCode_2021 {
|
|||||||
DeleteSapforSettings,
|
DeleteSapforSettings,
|
||||||
PublishSapforSettingsCommand,
|
PublishSapforSettingsCommand,
|
||||||
EditSapforSettingsCommand,
|
EditSapforSettingsCommand,
|
||||||
DeleteSapforSettingsCommand
|
DeleteSapforSettingsCommand,
|
||||||
|
PublishDVMSettings,
|
||||||
|
EditDVMSettings,
|
||||||
|
DeleteDVMSettings
|
||||||
;
|
;
|
||||||
//--
|
//--
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
switch (this) {
|
switch (this) {
|
||||||
case Undefined:
|
case Undefined:
|
||||||
return "?";
|
return "?";
|
||||||
|
case PublishDVMSettings:
|
||||||
|
return "Опубликовать параметры тестирования ";
|
||||||
|
case EditDVMSettings:
|
||||||
|
return "Редактировать параметры тестирования ";
|
||||||
|
case DeleteDVMSettings:
|
||||||
|
return "Удалить параметры тестирования";
|
||||||
case PublishSapforSettingsCommand:
|
case PublishSapforSettingsCommand:
|
||||||
return "Опубликовать команду настроек SAPFOR";
|
return "Опубликовать команду SAPFOR";
|
||||||
case EditSapforSettingsCommand:
|
case EditSapforSettingsCommand:
|
||||||
return "Редактировать команду настроек SAPFOR";
|
return "Редактировать команду SAPFOR";
|
||||||
case DeleteSapforSettingsCommand:
|
case DeleteSapforSettingsCommand:
|
||||||
return "Удалить команду настроек SAPFOR";
|
return "Удалить команду SAPFOR";
|
||||||
case PublishSapforSettings:
|
case PublishSapforSettings:
|
||||||
return "Опубликовать настройки SAPFOR";
|
return "Опубликовать параметры тестирования SAPFOR";
|
||||||
case EditSapforSettings:
|
case EditSapforSettings:
|
||||||
return "Редактировать настройки SAPFOR";
|
return "Редактировать параметры тестирования SAPFOR";
|
||||||
case DeleteSapforSettings:
|
case DeleteSapforSettings:
|
||||||
return "Удалить настройки SAPFOR";
|
return "Удалить параметры тестирования SAPFOR";
|
||||||
case CloneCurrentDVMConfiguration:
|
case CloneCurrentDVMConfiguration:
|
||||||
return "Дублировать текущую конфигурацию тестирования DVM системы";
|
return "Дублировать текущую конфигурацию тестирования DVM системы";
|
||||||
case StartSelectedSAPFORConfigurations:
|
case StartSelectedSAPFORConfigurations:
|
||||||
|
|||||||
@@ -170,7 +170,7 @@
|
|||||||
<properties/>
|
<properties/>
|
||||||
<border type="none"/>
|
<border type="none"/>
|
||||||
<children>
|
<children>
|
||||||
<grid id="7eb69" binding="configurationsPanel" layout-manager="BorderLayout" hgap="0" vgap="0">
|
<grid id="17cb3" binding="dvmSettingsPanel" layout-manager="BorderLayout" hgap="0" vgap="0">
|
||||||
<constraints border-constraint="Center"/>
|
<constraints border-constraint="Center"/>
|
||||||
<properties/>
|
<properties/>
|
||||||
<border type="none"/>
|
<border type="none"/>
|
||||||
@@ -185,7 +185,23 @@
|
|||||||
<properties/>
|
<properties/>
|
||||||
<border type="none"/>
|
<border type="none"/>
|
||||||
<children>
|
<children>
|
||||||
<grid id="8a87c" binding="dvmPackagesPanel" layout-manager="BorderLayout" hgap="0" vgap="0">
|
<splitpane id="c7883" binding="SC85">
|
||||||
|
<constraints border-constraint="Center"/>
|
||||||
|
<properties>
|
||||||
|
<dividerLocation value="120"/>
|
||||||
|
<dividerSize value="3"/>
|
||||||
|
<orientation value="0"/>
|
||||||
|
</properties>
|
||||||
|
<border type="none"/>
|
||||||
|
<children>
|
||||||
|
<grid id="42875" layout-manager="BorderLayout" hgap="0" vgap="0">
|
||||||
|
<constraints>
|
||||||
|
<splitpane position="left"/>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
<border type="none"/>
|
||||||
|
<children>
|
||||||
|
<grid id="4739d" binding="configurationsPanel" layout-manager="BorderLayout" hgap="0" vgap="0">
|
||||||
<constraints border-constraint="Center"/>
|
<constraints border-constraint="Center"/>
|
||||||
<properties/>
|
<properties/>
|
||||||
<border type="none"/>
|
<border type="none"/>
|
||||||
@@ -193,6 +209,25 @@
|
|||||||
</grid>
|
</grid>
|
||||||
</children>
|
</children>
|
||||||
</grid>
|
</grid>
|
||||||
|
<grid id="28479" layout-manager="BorderLayout" hgap="0" vgap="0">
|
||||||
|
<constraints>
|
||||||
|
<splitpane position="right"/>
|
||||||
|
</constraints>
|
||||||
|
<properties/>
|
||||||
|
<border type="none"/>
|
||||||
|
<children>
|
||||||
|
<grid id="ff2c1" binding="dvmPackagesPanel" layout-manager="BorderLayout" hgap="0" vgap="0">
|
||||||
|
<constraints border-constraint="Center"/>
|
||||||
|
<properties/>
|
||||||
|
<border type="none"/>
|
||||||
|
<children/>
|
||||||
|
</grid>
|
||||||
|
</children>
|
||||||
|
</grid>
|
||||||
|
</children>
|
||||||
|
</splitpane>
|
||||||
|
</children>
|
||||||
|
</grid>
|
||||||
</children>
|
</children>
|
||||||
</splitpane>
|
</splitpane>
|
||||||
</children>
|
</children>
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
public JSplitPane SC19;
|
public JSplitPane SC19;
|
||||||
public JSplitPane SC80;
|
public JSplitPane SC80;
|
||||||
public JSplitPane SC83;
|
public JSplitPane SC83;
|
||||||
|
public JSplitPane SC85;
|
||||||
//---
|
//---
|
||||||
private JTabbedPane testingTabs;
|
private JTabbedPane testingTabs;
|
||||||
private JPanel dvmPackagesTab;
|
private JPanel dvmPackagesTab;
|
||||||
@@ -62,6 +63,7 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
private JPanel credentialsPanel;
|
private JPanel credentialsPanel;
|
||||||
private JPanel sapforSettingsPanel;
|
private JPanel sapforSettingsPanel;
|
||||||
private JPanel sapforSettingsCommandsPanel;
|
private JPanel sapforSettingsCommandsPanel;
|
||||||
|
private JPanel dvmSettingsPanel;
|
||||||
private JPanel testsRunTasksBackground;
|
private JPanel testsRunTasksBackground;
|
||||||
private JCheckBox filterFinished;
|
private JCheckBox filterFinished;
|
||||||
private JButton bTest;
|
private JButton bTest;
|
||||||
@@ -136,6 +138,7 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
Global.testingServer.db.sapforPackages.mountUI(sapforPackagesPanel);
|
Global.testingServer.db.sapforPackages.mountUI(sapforPackagesPanel);
|
||||||
Global.testingServer.db.sapforSettings.mountUI(sapforSettingsPanel);
|
Global.testingServer.db.sapforSettings.mountUI(sapforSettingsPanel);
|
||||||
Global.testingServer.db.sapforSettingsCommands.mountUI(sapforSettingsCommandsPanel);
|
Global.testingServer.db.sapforSettingsCommands.mountUI(sapforSettingsCommandsPanel);
|
||||||
|
Global.testingServer.db.dvmSettings.mountUI(dvmSettingsPanel);
|
||||||
//--
|
//--
|
||||||
if (Global.properties.collapseCredentials)
|
if (Global.properties.collapseCredentials)
|
||||||
CollapseCredentials();
|
CollapseCredentials();
|
||||||
@@ -151,6 +154,7 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
Global.testingServer.db.serverSapfors.ShowUI();
|
Global.testingServer.db.serverSapfors.ShowUI();
|
||||||
Global.testingServer.db.sapforConfigurations.ShowUI();
|
Global.testingServer.db.sapforConfigurations.ShowUI();
|
||||||
Global.testingServer.db.dvmRunTasks.ShowUI();
|
Global.testingServer.db.dvmRunTasks.ShowUI();
|
||||||
|
Global.testingServer.db.dvmSettings.ShowUI();
|
||||||
Global.testingServer.db.sapforSettings.ShowUI();
|
Global.testingServer.db.sapforSettings.ShowUI();
|
||||||
//---
|
//---
|
||||||
RestoreLastCredentials();
|
RestoreLastCredentials();
|
||||||
|
|||||||
@@ -6,13 +6,6 @@
|
|||||||
</constraints>
|
</constraints>
|
||||||
<properties/>
|
<properties/>
|
||||||
<border type="none"/>
|
<border type="none"/>
|
||||||
<children>
|
|
||||||
<grid id="a1635" binding="sapforConfigurationsPanel" layout-manager="BorderLayout" hgap="0" vgap="0">
|
|
||||||
<constraints border-constraint="Center"/>
|
|
||||||
<properties/>
|
|
||||||
<border type="none"/>
|
|
||||||
<children/>
|
<children/>
|
||||||
</grid>
|
</grid>
|
||||||
</children>
|
|
||||||
</grid>
|
|
||||||
</form>
|
</form>
|
||||||
|
|||||||
@@ -2,6 +2,5 @@ package Visual_DVM_2021.UI.Main;
|
|||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
public class buffer_ {
|
public class buffer_ {
|
||||||
private JPanel panel1;
|
private JPanel panel1;
|
||||||
private JPanel sapforConfigurationsPanel;
|
|
||||||
//Скачать пакет задач
|
//Скачать пакет задач
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user