диалог для сравнения двм задач
This commit is contained in:
12
.idea/workspace.xml
generated
12
.idea/workspace.xml
generated
@@ -7,13 +7,17 @@
|
|||||||
</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/TestingSystem/Common/Group/UI/AddGroupMenu.java" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Group/UI/EditGroupMenu.java" afterDir="false" />
|
||||||
<change afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Test/UI/AddTestMenu.java" afterDir="false" />
|
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CompareDVMRunTasks.java" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/ReplaceTestsFromFiles.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$/src/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Server/ServerCode.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsMenuBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsMenuBar.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsMenuBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Group/GroupsMenuBar.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Test/TestsMenuBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Test/TestsMenuBar.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/DVMPackagesBar.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/DVM/DVMPackage/DVMPackagesBar.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/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/Interface/TestingWindow.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Interface/TestingWindow.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/ComparisonForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/UI/Main/ComparisonForm.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" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ public enum ServerCode {
|
|||||||
DownloadDVMPackages,
|
DownloadDVMPackages,
|
||||||
DownloadSapforPackage,
|
DownloadSapforPackage,
|
||||||
InstallServerSapfor,
|
InstallServerSapfor,
|
||||||
ReplaceTestCode
|
ReplaceTestCode,
|
||||||
|
ReplaceTestsCodes,
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import Common.UI.Menus_2023.MenuBarButton;
|
|||||||
import Common.Utils.Utils;
|
import Common.Utils.Utils;
|
||||||
import TestingSystem.Common.Group.GroupsDBTable;
|
import TestingSystem.Common.Group.GroupsDBTable;
|
||||||
import TestingSystem.Common.Group.UI.AddGroupMenu;
|
import TestingSystem.Common.Group.UI.AddGroupMenu;
|
||||||
|
import TestingSystem.Common.Group.UI.EditGroupMenu;
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
@@ -14,8 +15,8 @@ public class GroupsMenuBar extends DataMenuBar {
|
|||||||
PassCode_2021.SynchronizeTests,
|
PassCode_2021.SynchronizeTests,
|
||||||
PassCode_2021.ConvertCorrectnessTests
|
PassCode_2021.ConvertCorrectnessTests
|
||||||
);
|
);
|
||||||
addMenus(new AddGroupMenu());
|
addMenus(new AddGroupMenu(), new EditGroupMenu());
|
||||||
addPasses(PassCode_2021.EditGroup, PassCode_2021.DeleteGroup);
|
addPasses(PassCode_2021.DeleteGroup);
|
||||||
add(new JSeparator());
|
add(new JSeparator());
|
||||||
add(new MenuBarButton() {
|
add(new MenuBarButton() {
|
||||||
{
|
{
|
||||||
|
|||||||
11
src/TestingSystem/Common/Group/UI/EditGroupMenu.java
Normal file
11
src/TestingSystem/Common/Group/UI/EditGroupMenu.java
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
package TestingSystem.Common.Group.UI;
|
||||||
|
import Common.UI.Menus_2023.VisualiserMenu;
|
||||||
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
import Visual_DVM_2021.Passes.Pass_2021;
|
||||||
|
public class EditGroupMenu extends VisualiserMenu {
|
||||||
|
public EditGroupMenu() {
|
||||||
|
super("Редактирование группы", "/icons/Edit.png", false);
|
||||||
|
add(Pass_2021.passes.get(PassCode_2021.EditGroup).createMenuItem());
|
||||||
|
// add(Pass_2021.passes.get(PassCode_2021.ReplaceTestsFromFiles).createMenuItem());
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,11 +1,9 @@
|
|||||||
package TestingSystem.DVM.DVMTasks;
|
package TestingSystem.DVM.DVMTasks;
|
||||||
import Common.Database.DataSet;
|
|
||||||
import Common.UI.Menus_2023.DataMenuBar;
|
import Common.UI.Menus_2023.DataMenuBar;
|
||||||
import Visual_DVM_2021.Passes.PassCode_2021;
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
|
||||||
import javax.swing.*;
|
|
||||||
public class DVMRunTasksBar extends DataMenuBar {
|
public class DVMRunTasksBar extends DataMenuBar {
|
||||||
public DVMRunTasksBar() {
|
public DVMRunTasksBar() {
|
||||||
super("задачи", PassCode_2021.DownloadTaskTest);
|
super("задачи",
|
||||||
|
PassCode_2021.CompareDVMRunTasks, PassCode_2021.DownloadTaskTest);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
44
src/Visual_DVM_2021/Passes/All/CompareDVMRunTasks.java
Normal file
44
src/Visual_DVM_2021/Passes/All/CompareDVMRunTasks.java
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
package Visual_DVM_2021.Passes.All;
|
||||||
|
import Common.Global;
|
||||||
|
import Common.UI.UI;
|
||||||
|
import Common.Utils.Utils;
|
||||||
|
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||||
|
import Visual_DVM_2021.Passes.Pass_2021;
|
||||||
|
|
||||||
|
import java.util.Vector;
|
||||||
|
public class CompareDVMRunTasks extends Pass_2021<Vector<DVMRunTask>> {
|
||||||
|
DVMRunTask master;
|
||||||
|
DVMRunTask slave;
|
||||||
|
@Override
|
||||||
|
public String getIconPath() {
|
||||||
|
return "/icons/Comparsion.png";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getButtonText() {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected boolean canStart(Object... args) throws Exception {
|
||||||
|
master = null;
|
||||||
|
slave = null;
|
||||||
|
//--
|
||||||
|
target = Global.testingServer.db.dvmRunTasks.getCheckedItems();
|
||||||
|
if (target.size() != 2) {
|
||||||
|
Log.Writeln_("Для сравнения требуется отметить две задачи.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (UI.Question("Назначить задачу " + Utils.Brackets(target.get(0).getPK()) + " эталоном" +
|
||||||
|
"\n(в случае отказа, будет назначена задача " + Utils.Brackets(target.get(1).getPK()) + ")")) {
|
||||||
|
master = target.get(0);
|
||||||
|
slave = target.get(1);
|
||||||
|
} else {
|
||||||
|
master = target.get(1);
|
||||||
|
slave = target.get(0);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void body() throws Exception {
|
||||||
|
UI.getMainWindow().getTestingWindow().CompareDVMRunTasks(master, slave);
|
||||||
|
}
|
||||||
|
}
|
||||||
84
src/Visual_DVM_2021/Passes/All/ReplaceTestsFromFiles.java
Normal file
84
src/Visual_DVM_2021/Passes/All/ReplaceTestsFromFiles.java
Normal file
@@ -0,0 +1,84 @@
|
|||||||
|
package Visual_DVM_2021.Passes.All;
|
||||||
|
import Common.Constants;
|
||||||
|
import Common.Current;
|
||||||
|
import Common.UI.UI;
|
||||||
|
import Common.Utils.Files.VFileChooser;
|
||||||
|
import Common.Utils.Utils;
|
||||||
|
import GlobalData.Settings.SettingName;
|
||||||
|
import TestingSystem.Common.Group.Group;
|
||||||
|
import TestingSystem.Common.Test.Test;
|
||||||
|
import Visual_DVM_2021.Passes.PassCode_2021;
|
||||||
|
import Visual_DVM_2021.Passes.Pass_2021;
|
||||||
|
import Visual_DVM_2021.Passes.Server.TestingSystemPass;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
import java.util.Vector;
|
||||||
|
public class ReplaceTestsFromFiles extends TestingSystemPass<Vector<Test>> {
|
||||||
|
Group group;
|
||||||
|
Vector<Test> testsForReplace;
|
||||||
|
VFileChooser fileChooser = new VFileChooser("Выберите файлы для замены тестов");
|
||||||
|
@Override
|
||||||
|
public String getIconPath() {
|
||||||
|
return "/icons/Menu/Undo.png";
|
||||||
|
}
|
||||||
|
//-
|
||||||
|
@Override
|
||||||
|
protected boolean canStart(Object... args) throws Exception {
|
||||||
|
if (!Current.Check(Log, Current.Group))
|
||||||
|
return false;
|
||||||
|
group = Current.getGroup();
|
||||||
|
Utils.RestoreSelectedDirectory(fileChooser);
|
||||||
|
Vector<File> files = fileChooser.ShowMultiDialog();
|
||||||
|
LinkedHashMap<String, File> sortedFiles = new LinkedHashMap<>();
|
||||||
|
//--
|
||||||
|
if (files.isEmpty()) {
|
||||||
|
Log.Writeln_("Не выбрано ни одного файла.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
for (File file : files) {
|
||||||
|
String name = Utils.getNameWithoutExtension(file.getName()).toLowerCase();
|
||||||
|
if (!sortedFiles.containsKey(name)) {
|
||||||
|
sortedFiles.put(name, file);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
File dir = fileChooser.getCurrentDirectory();
|
||||||
|
Pass_2021.passes.get(PassCode_2021.UpdateSetting).Do(SettingName.ProjectsSearchDirectory, dir);
|
||||||
|
//---------------
|
||||||
|
if (dir.getName().equals(Constants.data)) {
|
||||||
|
Log.Writeln_(Utils.Brackets(dir) + "\nявляется служебной папкой визуализатора!");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
if (!Utils.validateProjectFile(dir, Log)) {
|
||||||
|
Log.Writeln_("Имя папки " + Utils.Brackets(dir.getName()) + " содержит запрещённые символы " + Constants.all_forbidden_characters_string + ", или кириллицу.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
testsForReplace = new Vector<>();
|
||||||
|
Vector<String> testForReplaceNames = new Vector<>();
|
||||||
|
for (Test test : server.db.tests.Data.values()) {
|
||||||
|
if ((test.group_id == group.id)&&sortedFiles.containsKey(test.description)) {
|
||||||
|
testsForReplace.add(test);
|
||||||
|
testForReplaceNames.add(test.description);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (testsForReplace.size()==0){
|
||||||
|
Log.Writeln_("Не найдено тестов на замену.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
//--
|
||||||
|
if (UI.Question("Тесты "+String.join("\n", testForReplaceNames)+"\nбудут заменены. Продолжить")){
|
||||||
|
|
||||||
|
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
//-
|
||||||
|
@Override
|
||||||
|
protected void ServerAction() throws Exception {
|
||||||
|
UI.Info("+");
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -317,12 +317,17 @@ public enum PassCode_2021 {
|
|||||||
CloneDVMPackage,
|
CloneDVMPackage,
|
||||||
CloneSapforPackage,
|
CloneSapforPackage,
|
||||||
SPF_RemoveDeadCode,
|
SPF_RemoveDeadCode,
|
||||||
ReplaceTestProject
|
ReplaceTestProject,
|
||||||
;
|
ReplaceTestsFromFiles,
|
||||||
|
CompareDVMRunTasks;
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
switch (this) {
|
switch (this) {
|
||||||
case Undefined:
|
case Undefined:
|
||||||
return "?";
|
return "?";
|
||||||
|
case CompareDVMRunTasks:
|
||||||
|
return "Сравнить тестовые задачи на запуск";
|
||||||
|
case ReplaceTestsFromFiles:
|
||||||
|
return "Заменить тесты группы на выбранные файлы";
|
||||||
case ReplaceTestProject:
|
case ReplaceTestProject:
|
||||||
return "Заменить тестовый проект на текущий";
|
return "Заменить тестовый проект на текущий";
|
||||||
case SPF_RemoveDeadCode:
|
case SPF_RemoveDeadCode:
|
||||||
|
|||||||
@@ -1,4 +1,5 @@
|
|||||||
package Visual_DVM_2021.UI.Interface;
|
package Visual_DVM_2021.UI.Interface;
|
||||||
|
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||||
public interface TestingWindow extends VisualizerForm {
|
public interface TestingWindow extends VisualizerForm {
|
||||||
void ShowAll();
|
void ShowAll();
|
||||||
//-
|
//-
|
||||||
@@ -21,4 +22,5 @@ public interface TestingWindow extends VisualizerForm {
|
|||||||
void ShowNoServerSapfor();
|
void ShowNoServerSapfor();
|
||||||
void ShowCurrentDVMPackage();
|
void ShowCurrentDVMPackage();
|
||||||
void ShowNoCurrentDVMPackage();
|
void ShowNoCurrentDVMPackage();
|
||||||
|
void CompareDVMRunTasks(DVMRunTask master, DVMRunTask slave);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -82,6 +82,12 @@ public abstract class ComparisonForm<T> {
|
|||||||
} else
|
} else
|
||||||
UI.Info(log.toString());
|
UI.Info(log.toString());
|
||||||
}
|
}
|
||||||
|
public void ApplyObject(DBObject object_in){
|
||||||
|
RemoveObject();
|
||||||
|
object = (T)object_in;
|
||||||
|
applyObject();
|
||||||
|
showObject();
|
||||||
|
}
|
||||||
private void ShowCurrentDiff() {
|
private void ShowCurrentDiff() {
|
||||||
Body.gotoLine_(colors.get(current_diff_line).getKey());
|
Body.gotoLine_(colors.get(current_diff_line).getKey());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import Common.UI.TextField.StyledTextField;
|
|||||||
import Common.UI.UI;
|
import Common.UI.UI;
|
||||||
import GlobalData.Compiler.CompilerType;
|
import GlobalData.Compiler.CompilerType;
|
||||||
import TestingSystem.Common.TestingServer;
|
import TestingSystem.Common.TestingServer;
|
||||||
|
import TestingSystem.DVM.DVMTasks.DVMRunTask;
|
||||||
import Visual_DVM_2021.UI.Interface.FormWithSplitters;
|
import Visual_DVM_2021.UI.Interface.FormWithSplitters;
|
||||||
import Visual_DVM_2021.UI.Interface.TestingWindow;
|
import Visual_DVM_2021.UI.Interface.TestingWindow;
|
||||||
|
|
||||||
@@ -31,7 +32,6 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
private JPanel dvmComparisonTab;
|
private JPanel dvmComparisonTab;
|
||||||
private JPanel sapforPackagesTab;
|
private JPanel sapforPackagesTab;
|
||||||
private JPanel sapforComparisonTab;
|
private JPanel sapforComparisonTab;
|
||||||
|
|
||||||
private JPanel dvmRunTasksPanel;
|
private JPanel dvmRunTasksPanel;
|
||||||
private JToolBar testsResultsTools;
|
private JToolBar testsResultsTools;
|
||||||
private JButton bChangeKernels;
|
private JButton bChangeKernels;
|
||||||
@@ -47,7 +47,6 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
private JPanel sapforScenariosPanel;
|
private JPanel sapforScenariosPanel;
|
||||||
private JPanel serverSapforsPanel;
|
private JPanel serverSapforsPanel;
|
||||||
private JPanel sapforPackagesPanel;
|
private JPanel sapforPackagesPanel;
|
||||||
|
|
||||||
private JPanel testsRunTasksBackground;
|
private JPanel testsRunTasksBackground;
|
||||||
private JCheckBox filterFinished;
|
private JCheckBox filterFinished;
|
||||||
private JButton bTest;
|
private JButton bTest;
|
||||||
@@ -87,7 +86,6 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
Global.testingServer.db.configurations.mountUI(configurationsPanel);
|
Global.testingServer.db.configurations.mountUI(configurationsPanel);
|
||||||
Global.testingServer.db.dvmPackages.mountUI(dvmPackagesPanel);
|
Global.testingServer.db.dvmPackages.mountUI(dvmPackagesPanel);
|
||||||
Global.testingServer.db.dvmRunTasks.mountUI(dvmRunTasksPanel);
|
Global.testingServer.db.dvmRunTasks.mountUI(dvmRunTasksPanel);
|
||||||
|
|
||||||
Global.testingServer.db.sapforConfigurations.mountUI(sapforConfigurationsPanel);
|
Global.testingServer.db.sapforConfigurations.mountUI(sapforConfigurationsPanel);
|
||||||
Global.testingServer.db.sapforConfigurationCommands.mountUI(sapforConfigurationCommandsPanel);
|
Global.testingServer.db.sapforConfigurationCommands.mountUI(sapforConfigurationCommandsPanel);
|
||||||
Global.testingServer.db.serverSapfors.mountUI(serverSapforsPanel);
|
Global.testingServer.db.serverSapfors.mountUI(serverSapforsPanel);
|
||||||
@@ -166,8 +164,8 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
public void ShowCurrentCompiler() {
|
public void ShowCurrentCompiler() {
|
||||||
String title = (Current.HasCompiler() && Current.getCompiler().type.equals(CompilerType.dvm))?
|
String title = (Current.HasCompiler() && Current.getCompiler().type.equals(CompilerType.dvm)) ?
|
||||||
"DVM система: " + Current.getCompiler().description: "DVM система: ?";
|
"DVM система: " + Current.getCompiler().description : "DVM система: ?";
|
||||||
testingTabs.setTitleAt(0, title);
|
testingTabs.setTitleAt(0, title);
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
@@ -184,4 +182,10 @@ public class TestingForm implements FormWithSplitters, TestingWindow {
|
|||||||
@Override
|
@Override
|
||||||
public void ShowNoCurrentDVMPackage() {
|
public void ShowNoCurrentDVMPackage() {
|
||||||
}
|
}
|
||||||
|
@Override
|
||||||
|
public void CompareDVMRunTasks(DVMRunTask master, DVMRunTask slave) {
|
||||||
|
dvmTestingRunMaster.ApplyObject(master);
|
||||||
|
dvmTestingRunSlave.ApplyObject(slave);
|
||||||
|
testingTabs.setSelectedIndex(1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user