Files
VisualSapfor/src/Visual_DVM_2021/Passes/All/CreateTestsGroupFromSelectedVersions.java
2023-11-23 22:38:21 +03:00

92 lines
3.2 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
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 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>> {
int group_id;
int test_id;
@Override
protected boolean needsAnimation() {
return true;
}
@Override
public String getIconPath() {
return "/icons/Publish.png";
}
@Override
public String getButtonText() {
return "";
}
@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) {
Log.Writeln_("Нажмите правую клавишу мыши, и перейдите в режим выбора версий.");
return false;
}
if (!Current.Check(Log, Current.Group)) {
return false;
}
target = new Vector<>();
group_id = Current.getGroup().id;
Current.getRoot().getSelectedVersions(target);
if (target.size() == 0) {
Log.Writeln_("Не отмечено ни одной версии.");
return false;
}
if (Current.getProject().hasSubdirectories()) {
Log.Writeln_("Запрещено добавлять тестовые проекты, содержащие подпапки!");
return false;
}
String cp_info = "";
if (Current.HasProject()) {
for (db_project_info version : target) {
if (version.Home.getAbsolutePath().equals(Current.getProject().Home.getAbsolutePath())) {
cp_info = "Текущий проект будет закрыт.";
break;
}
}
}
return UI.Question("В текущую группу " + Utils.Brackets(Current.getGroup().description) +
"\nбудет добавлено " + target.size() + " тестов.\n" + cp_info +
"\родолжить");
}
@Override
protected void performPreparation() throws Exception {
passes.get(PassCode_2021.CloseCurrentProject).Do();
}
@Override
protected void showPreparation() throws Exception {
UI.testingBar.ShowAutoCheckTesting();
}
@Override
protected void body() throws Exception {
/*
for (db_project_info vizTestProject : target) {
//на случай если версия в текущем сеансе еще не открывалась.
vizTestProject.Open();
vizTestProject.Close();
if (!passes.get(PassCode_2021.PublishTest).Do(vizTestProject, Current.getGroup().id)) break;
}
*/
}
@Override
protected void performFinish() throws Exception {
passes.get(PassCode_2021.SynchronizeTests).Do();
}
@Override
protected void FocusResult() {
UI.getMainWindow().FocusTests();
}
}