исправил внесенные баги, связанные с созданием тестов из версий проекта.

This commit is contained in:
2023-11-20 00:15:22 +03:00
parent 928705e018
commit b9132782eb
19 changed files with 114 additions and 169 deletions

View File

@@ -1,19 +1,18 @@
package Visual_DVM_2021.Passes.All;
import Common.Constants;
import Common.Current;
import Common.Global;
import Common.UI.UI;
import Common.Utils.Utils;
import ProjectData.Project.db_project_info;
import TestingSystem.Common.Group.Group;
import TestingSystem.Common.Test.Test;
import TestingSystem.Common.Test.TestType;
import Visual_DVM_2021.Passes.PassCode_2021;
import Visual_DVM_2021.Passes.Pass_2021;
import java.util.Vector;
public class CreateTestsGroupFromSelectedVersions extends Pass_2021<Vector<db_project_info>> {
Group group;
Test test;
int group_id;
int test_id;
@Override
protected boolean needsAnimation() {
return true;
@@ -28,6 +27,8 @@ public class CreateTestsGroupFromSelectedVersions extends Pass_2021<Vector<db_pr
}
@Override
protected boolean canStart(Object... args) throws Exception {
group_id = Constants.Nan;
test_id = Constants.Nan;
if (!Current.getAccount().CheckRegistered(Log))
return false;
if (!Global.versions_multiselection) {
@@ -35,8 +36,6 @@ public class CreateTestsGroupFromSelectedVersions extends Pass_2021<Vector<db_pr
return false;
}
target = new Vector<>();
group = null;
test = null;
Current.getRoot().getSelectedVersions(target);
if (target.size() == 0) {
Log.Writeln_("Не отмечено ни одной версии.");
@@ -87,7 +86,7 @@ public class CreateTestsGroupFromSelectedVersions extends Pass_2021<Vector<db_pr
};
ShowMessage1("Публикация группы ");
if (publishGroup.Do()) {
group = publishGroup.target;
group_id = (int) publishGroup.pk;
for (db_project_info vizTestProject : target) {
//на случай если версия в текущем сеансе еще не открывалась.
vizTestProject.Open();
@@ -99,18 +98,25 @@ public class CreateTestsGroupFromSelectedVersions extends Pass_2021<Vector<db_pr
return false;
}
@Override
public boolean fillObjectFields() throws Exception {
public boolean setProject() {
project = vizTestProject;
if (project.checkSubdirectories(Log)) {
return true;
}
@Override
public boolean fillObjectFields() throws Exception {
if (setProject() && project.checkSubdirectories(Log)) {
target.description = project.getLocalName() + " " + project.description;
target.group_id = group_id;
switch (project.languageName) {
case fortran:
project.testMaxDim = Current.getSapfor().getTextMaxDim(null, project);
break;
target.dim = Current.getSapfor().getTextMaxDim(null, project);
return true;
case c:
target.dim = Utils.getCProjectMaxDim(project);
return true;
default:
project.testMaxDim = 0;
break;
return false;
}
return true;
}
return false;
}
@@ -118,19 +124,31 @@ public class CreateTestsGroupFromSelectedVersions extends Pass_2021<Vector<db_pr
public String getDescription() {
return "Добавление версии " + vizTestProject.name;
}
@Override
protected void performDone() throws Exception {
test_id = (int) pk;
}
@Override
protected void showDone() throws Exception {
}
};
if (pass.Do())
test = pass.target;
}
if (passes.get(PassCode_2021.SynchronizeTests).Do()) {
if (group != null) Global.testingServer.db.groups.ui_.Show(group.getPK());
if (test != null) Global.testingServer.db.tests.ui_.Show(test.getPK());
if (!pass.Do()) return;
}
}
}
@Override
protected void performFinish() throws Exception {
super.performDone();
passes.get(PassCode_2021.SynchronizeTests).Do();
}
@Override
protected void showDone() throws Exception {
super.showDone();
Global.testingServer.db.groups.ui_.Show(group_id);
Global.testingServer.db.tests.ui_.Show(test_id);
}
@Override
protected void FocusResult() {
UI.getMainWindow().FocusTesting();
UI.getMainWindow().getTestingWindow().FocusTestingSystem();
UI.getMainWindow().FocusTests();
}
}