убрал наличие бд в тестах.

This commit is contained in:
2023-11-26 00:30:43 +03:00
parent 93ccdc3522
commit 253de8526a
11 changed files with 165 additions and 146 deletions

View File

@@ -5,7 +5,7 @@ import Common.Utils.Files.VDirectoryChooser;
import Common.Utils.Utils;
import GlobalData.Settings.SettingName;
import ProjectData.Files.ProjectFile;
import ProjectData.Project.db_project_info;
import ProjectData.LanguageName;
import Repository.Component.Sapfor.Sapfor;
import TestingSystem.Common.Group.Group;
import TestingSystem.Common.Test.Test;
@@ -116,7 +116,9 @@ public class CreateTestFromDirectory extends Pass_2021<Test> {
return false;
}
if (other_project_files > 0) {
Log.Writeln_("Папка содержит файлы, не являющиеся программами на языке FORTRAN, или заголовочными.");
Log.Writeln_("Папка содержит файлы, не являющиеся программами на языке " +
group.language.getDescription() +
", или заголовочными.");
return false;
}
//-----
@@ -135,30 +137,11 @@ public class CreateTestFromDirectory extends Pass_2021<Test> {
protected void body() throws Exception {
ShowMessage1(dir.getName());
//--
db_project_info project = target.packCode(dir, true); //создание копии папки, и архивация.
File tempProject = target.packCode(dir, true); //создание копии папки, и архивация.
//-- получить размерность консольным сапфором. папка уже отправлена и чистить ее не нужно!!
ShowMessage2("Синтаксический анализ");
if (Sapfor.parse(Sapfor.getTempCopy(Current.getSapfor().getFile()), project.Home, Current.getSapfor().getConsoleFlags())
) {
ShowMessage2("Определение размерности");
if (Sapfor.analysis(Sapfor.getTempCopy(Current.getSapfor().getFile()), project.Home,
PassCode_2021.SPF_GetMaxMinBlockDistribution,
Current.getSapfor().getConsoleFlags())) {
for (String line : Sapfor.outputLines) {
String prefix = "GET_MIN_MAX_BLOCK_DIST: ";
if (line.startsWith(prefix)) {
String s = line.substring(prefix.length());
System.out.println(Utils.Brackets(s));
String[] data = s.split(" ");
target.min_dim = Math.max(Integer.parseInt(data[0]),0);
target.max_dim = Math.max(Integer.parseInt(data[1]),0);
break;
}
}
} else Log.Writeln_("Не удалось определить размерность.проекта " + Utils.Brackets(dir.getName()));
} else {
Log.Writeln_("Не удалось выполнить синтаксический анализ проекта " + Utils.Brackets(dir.getName()));
}
ShowMessage2("Синтаксический анализ и определение размерности");
if (group.language.equals(LanguageName.fortran)&&!Sapfor.getMinMaxDim(Sapfor.getTempCopy(Current.getSapfor().getFile()), tempProject, target))
Log.Writeln_("Не удалось определить размерность теста " + Utils.Brackets(tempProject.getName()));
}
@Override
protected boolean validate() {