доделал копирование папок для тестов. не было учтено наличие подверсий.
This commit is contained in:
2023-11-27 21:59:45 +03:00
parent f8146f8267
commit e6f9b9103b
5 changed files with 26 additions and 23 deletions

8
.idea/workspace.xml generated
View File

@@ -7,13 +7,11 @@
</component> </component>
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment=""> <list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
<change afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/SPF_RemoveComments.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/icons/Transformations/SPF_RemoveComments.png" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Common/UI/Menus_2023/MainMenuBar/TransformationsMenu.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/UI/Menus_2023/MainMenuBar/TransformationsMenu.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/Common/Utils/Utils.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Utils/Utils.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Repository/Component/Sapfor/Sapfor.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Component/Sapfor/Sapfor.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Repository/Component/Visualiser.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/PassCode_2021.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/TestingSystem/Common/Test/Test.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/TestingSystem/Common/Test/Test.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CreateTestFromDirectory.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Visual_DVM_2021/Passes/All/CreateTestFromDirectory.java" afterDir="false" />
</list> </list>
<option name="SHOW_DIALOG" value="false" /> <option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" /> <option name="HIGHLIGHT_CONFLICTS" value="true" />

View File

@@ -108,7 +108,8 @@ public class Utils {
int di = fn.lastIndexOf("."); int di = fn.lastIndexOf(".");
return (di >= 0) ? fn.substring(di + 1).toLowerCase() : ""; return (di >= 0) ? fn.substring(di + 1).toLowerCase() : "";
} }
public static String getExtensionByName(String fn) {; public static String getExtensionByName(String fn) {
;
int di = fn.lastIndexOf("."); int di = fn.lastIndexOf(".");
return (di >= 0) ? fn.substring(di + 1).toLowerCase() : ""; return (di >= 0) ? fn.substring(di + 1).toLowerCase() : "";
} }
@@ -1136,15 +1137,7 @@ public class Utils {
} }
//-- //--
public static boolean isVersion(File directory) throws Exception { public static boolean isVersion(File directory) throws Exception {
File[] files = directory.listFiles(File::isDirectory); return new File(directory, Constants.data).exists();
if (files!=null){
for (File file: files){
File data = new File(file, Constants.data);
if (data.exists())
return true;
}
}
return false;
} }
} }

View File

@@ -62,7 +62,7 @@ public class Visualiser extends Component {
//http://www.seostella.com/ru/article/2012/02/05/formatirovanie-daty-v-java.html //http://www.seostella.com/ru/article/2012/02/05/formatirovanie-daty-v-java.html
@Override @Override
public void GetVersionInfo() { public void GetVersionInfo() {
version = 1039; version = 1040;
String pattern = "MMM dd yyyy HH:mm:ss"; String pattern = "MMM dd yyyy HH:mm:ss";
DateFormat df = new SimpleDateFormat(pattern, Locale.ENGLISH); DateFormat df = new SimpleDateFormat(pattern, Locale.ENGLISH);
date_text = df.format(getClassBuildTime()); date_text = df.format(getClassBuildTime());

View File

@@ -88,7 +88,18 @@ public class Test extends riDBObject {
File tempArchive = getTempArchive(); File tempArchive = getTempArchive();
//- создать бд. //- создать бд.
FileUtils.forceMkdir(tempProject); FileUtils.forceMkdir(tempProject);
FileUtils.copyDirectory(dir, tempProject); File[] files = dir.listFiles();
if (files == null)
throw new PassException("Не удалось получить список файлов папки " + Utils.Brackets(dir));
//--
//предполагается, что тут уже нет вложенных подпапок кроме версий. поэтому копируем только файлы.
for (File file : files) {
if (file.isFile()) {
System.out.println(file.getAbsolutePath());
File dst = new File(tempProject, file.getName());
FileUtils.copyFile(file, dst);
}
}
//--- //---
Utils.ClearProjectData(tempProject); Utils.ClearProjectData(tempProject);
//-- //--
@@ -134,8 +145,7 @@ public class Test extends riDBObject {
public String getFilesForTable() { public String getFilesForTable() {
return files.replace("\n", ";"); return files.replace("\n", ";");
} }
public LinkedHashMap<LanguageName, Vector<ProjectFile>> getPrograms() {
public LinkedHashMap<LanguageName, Vector<ProjectFile>> getPrograms(){
LinkedHashMap<LanguageName, Vector<ProjectFile>> res = new LinkedHashMap<>(); LinkedHashMap<LanguageName, Vector<ProjectFile>> res = new LinkedHashMap<>();
//-- //--
res.put(LanguageName.fortran, new Vector<>()); res.put(LanguageName.fortran, new Vector<>());
@@ -143,7 +153,7 @@ public class Test extends riDBObject {
res.put(LanguageName.cpp, new Vector<>()); res.put(LanguageName.cpp, new Vector<>());
//-- //--
String[] files_names = files.split("\n"); String[] files_names = files.split("\n");
for (String file_name: files_names){ for (String file_name : files_names) {
ProjectFile file = new ProjectFile(new File(file_name)); ProjectFile file = new ProjectFile(new File(file_name));
//-- //--
if (!file.state.equals(FileState.Excluded) && if (!file.state.equals(FileState.Excluded) &&
@@ -153,5 +163,4 @@ public class Test extends riDBObject {
} }
return res; return res;
} }
} }

View File

@@ -81,7 +81,10 @@ public class CreateTestFromDirectory extends Pass_2021<Test> {
Log.Writeln_("Имя файла " + Utils.Brackets(file.getName()) + " содержит запрещённые символы " + Constants.all_forbidden_characters_string + ", или кириллицу."); Log.Writeln_("Имя файла " + Utils.Brackets(file.getName()) + " содержит запрещённые символы " + Constants.all_forbidden_characters_string + ", или кириллицу.");
bad++; bad++;
} }
if (file.isDirectory() && !file.getName().equalsIgnoreCase(Constants.data) && Utils.isVersion(file)) { if (file.isDirectory() &&
!file.getName().equalsIgnoreCase(Constants.data) &&
!Utils.isVersion(file)
) {
subdirs++; subdirs++;
} }
if (file.isFile()) { if (file.isFile()) {
@@ -140,7 +143,7 @@ public class CreateTestFromDirectory extends Pass_2021<Test> {
File tempProject = target.packCode(dir, true); //создание копии папки, и архивация. File tempProject = target.packCode(dir, true); //создание копии папки, и архивация.
//-- получить размерность консольным сапфором. папка уже отправлена и чистить ее не нужно!! //-- получить размерность консольным сапфором. папка уже отправлена и чистить ее не нужно!!
ShowMessage2("Синтаксический анализ и определение размерности"); ShowMessage2("Синтаксический анализ и определение размерности");
if (group.language.equals(LanguageName.fortran)&&!Sapfor.getMinMaxDim(Sapfor.getTempCopy(Current.getSapfor().getFile()), tempProject, target)) if (group.language.equals(LanguageName.fortran) && !Sapfor.getMinMaxDim(Sapfor.getTempCopy(Current.getSapfor().getFile()), tempProject, target))
Log.Writeln_("Не удалось определить размерность теста " + Utils.Brackets(tempProject.getName())); Log.Writeln_("Не удалось определить размерность теста " + Utils.Brackets(tempProject.getName()));
} }
@Override @Override