доделал создание тестов из версий дерева версий. тоже включил учет исключенных файлов.

This commit is contained in:
2023-12-01 21:18:29 +03:00
parent 7ef2a7540c
commit 22dafd4dca
8 changed files with 69 additions and 63 deletions

View File

@@ -90,12 +90,16 @@ public class CreateTestFromDirectory extends Pass_2021<Test> {
} else if (file.isFile() && !Utils.ContainsCyrillic(file.getName()) && !Utils.ContainsForbiddenName(file.getName())) {
//если файл. все недопустимые файлы просто игнорируются.
ProjectFile projectFile = new ProjectFile(file);
System.out.println(projectFile.file);
System.out.println("1");
if (isNotExcluded(projectFile)) {
System.out.println("1.5");
switch (projectFile.fileType) {
case program:
if (projectFile.languageName.equals(group.language)) {
active_programs++;
project_files.add(projectFile);
System.out.println("2");
} else
other_project_files++;
break;
@@ -158,11 +162,10 @@ public class CreateTestFromDirectory extends Pass_2021<Test> {
//---
Utils.ClearProjectData(tempProject);
//--
ZipFolderPass zip = new ZipFolderPass();
if (zip.Do(tempProject.getAbsolutePath(), tempArchive.getAbsolutePath())) {
target.project_archive_bytes = Utils.packFile(tempArchive);
} else throw new PassException("Не удалось создать архив папки с кодом.");
ZipFolderPass zip = new ZipFolderPass();
if (zip.Do(tempProject.getAbsolutePath(), tempArchive.getAbsolutePath())) {
target.project_archive_bytes = Utils.packFile(tempArchive);
} else throw new PassException("Не удалось создать архив папки с кодом.");
return tempProject;
}
//-
@@ -173,8 +176,9 @@ public class CreateTestFromDirectory extends Pass_2021<Test> {
File tempProject = packTestCode(); //создание копии папки, и архивация.
//-- получить размерность консольным сапфором. папка уже отправлена и чистить ее не нужно!!
ShowMessage2("Синтаксический анализ и определение размерности");
if (group.language.equals(LanguageName.fortran) && !Sapfor.getMinMaxDim(Sapfor.getTempCopy(Current.getSapfor().getFile()), tempProject, target))
Log.Writeln_("Не удалось определить размерность теста " + Utils.Brackets(tempProject.getName()));
if (group.language == LanguageName.fortran) {//если не определит, будут нули.
Sapfor.getMinMaxDim(Sapfor.getTempCopy(Current.getSapfor().getFile()), tempProject, target);
}
}
@Override
protected boolean validate() {