2023-11-27 16:21:40 +03:00
|
|
|
|
package Visual_DVM_2021.Passes.All;
|
2024-10-08 00:39:13 +03:00
|
|
|
|
import Common.CurrentAnchestor;
|
2024-10-09 22:01:19 +03:00
|
|
|
|
import _VisualDVM.Current;
|
2023-12-01 19:31:31 +03:00
|
|
|
|
import ProjectData.Files.FileState;
|
|
|
|
|
|
import ProjectData.Files.ProjectFile;
|
|
|
|
|
|
import ProjectData.Project.db_project_info;
|
2023-12-01 21:18:29 +03:00
|
|
|
|
import TestingSystem.Common.Group.Group;
|
2023-12-02 16:36:35 +03:00
|
|
|
|
//из текущего проекта.
|
2023-12-01 21:18:29 +03:00
|
|
|
|
public class CreateTestFromProject extends CreateTestFromDirectory {
|
2023-12-01 19:31:31 +03:00
|
|
|
|
db_project_info project;
|
2023-11-27 16:21:40 +03:00
|
|
|
|
@Override
|
|
|
|
|
|
public String getIconPath() {
|
|
|
|
|
|
return "/icons/RedAdd.png";
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
|
|
|
protected boolean canStart(Object... args) throws Exception {
|
2023-12-01 21:18:29 +03:00
|
|
|
|
if (args.length == 0) {
|
2024-10-08 00:39:13 +03:00
|
|
|
|
if (CurrentAnchestor.Check(Log, Current.Group, Current.Project)) {
|
2023-12-01 21:18:29 +03:00
|
|
|
|
project = Current.getProject();
|
2023-12-02 17:35:56 +03:00
|
|
|
|
if (super.canStart(Current.getProject().Home, Current.getGroup())){
|
2024-07-21 23:19:18 +03:00
|
|
|
|
from_files_chooser = true; //чтобы опубликовал.
|
2023-12-02 17:35:56 +03:00
|
|
|
|
return true;
|
|
|
|
|
|
}
|
2023-12-01 21:18:29 +03:00
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
project = (db_project_info) args[0];
|
|
|
|
|
|
group = (Group) args[1];
|
2023-12-02 17:35:56 +03:00
|
|
|
|
//если проект не текущий, освежить его бд.
|
|
|
|
|
|
if (!Current.HasProject() || !Current.getProject().Home.equals(project.Home)) {
|
|
|
|
|
|
project.Open();
|
|
|
|
|
|
project.Close();
|
|
|
|
|
|
}
|
2023-12-01 21:18:29 +03:00
|
|
|
|
return super.canStart(project.Home, group);
|
2023-11-27 16:21:40 +03:00
|
|
|
|
}
|
|
|
|
|
|
return false;
|
|
|
|
|
|
}
|
|
|
|
|
|
@Override
|
2023-12-01 19:31:31 +03:00
|
|
|
|
public boolean isNotExcluded(ProjectFile projectFile) {
|
|
|
|
|
|
return project.db.files.containsKey(projectFile.file.getName()) &&
|
|
|
|
|
|
!project.db.files.get(projectFile.file.getName()).state.equals(FileState.Excluded);
|
|
|
|
|
|
}
|
2023-11-27 16:21:40 +03:00
|
|
|
|
}
|