From 793c4b7d9393ffeee1bd82a56e19b9f14ab9c66d Mon Sep 17 00:00:00 2001 From: 02090095 Date: Sat, 30 Sep 2023 20:56:59 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B7=D0=B0=D0=BF=D0=B8=D1=81=D1=8C=20=D1=80?= =?UTF-8?q?=D0=B5=D0=B7=D1=83=D0=BB=D1=8C=D1=82=D0=B0=D1=82=D0=BE=D0=B2=20?= =?UTF-8?q?=D1=82=D0=B5=D1=81=D1=82=D0=B8=D1=80=D0=BE=D0=B2=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D1=8F=20=D0=B2=20=D1=84=D0=B0=D0=B9=D0=BB=D1=8B.=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BA=D0=B0=20=D0=B4=D1=83=D0=BC=D0=B0=D1=8E=20?= =?UTF-8?q?=D0=BA=D0=B0=D0=BA=20=D0=BB=D1=83=D1=87=D1=88=D0=B5.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/workspace.xml | 3 ++ src/Common/Global.java | 2 -- .../SapforTask/SapforTask.java | 1 - .../SapforTest/SapforTest.java | 32 +++++++++++-------- .../SapforTestingPlanner.java | 4 +++ .../Passes/All/StartSapforTests.java | 4 +-- 6 files changed, 27 insertions(+), 19 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 7cb2f7a1..6d0a2019 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -7,6 +7,9 @@ + + + diff --git a/src/Common/Global.java b/src/Common/Global.java index 2c8940c2..8854a7c4 100644 --- a/src/Common/Global.java +++ b/src/Common/Global.java @@ -359,8 +359,6 @@ public class Global { Log.ClearLog(); SapforTestingPlanner planner = new SapforTestingPlanner(); planner.Start(); - System.out.println("Press any key to exit..."); - System.in.read(); } //--- public static void Init(String... args) { diff --git a/src/SapforTestingSystem/SapforTask/SapforTask.java b/src/SapforTestingSystem/SapforTask/SapforTask.java index 7e7a52ff..d2d17945 100644 --- a/src/SapforTestingSystem/SapforTask/SapforTask.java +++ b/src/SapforTestingSystem/SapforTask/SapforTask.java @@ -31,7 +31,6 @@ public class SapforTask extends DBObject { @Expose public TaskState state = TaskState.Inactive; @Description("DEFAULT '0'") - @Expose public int versions_tree_built = 0; //----------- public SapforTask() { diff --git a/src/SapforTestingSystem/SapforTest/SapforTest.java b/src/SapforTestingSystem/SapforTest/SapforTest.java index 79c2d8f0..d591ceef 100644 --- a/src/SapforTestingSystem/SapforTest/SapforTest.java +++ b/src/SapforTestingSystem/SapforTest/SapforTest.java @@ -2,7 +2,10 @@ package SapforTestingSystem.SapforTest; import Common.Constants.Constants; import Common.Global; import Common.Utils.Utils; +import GlobalData.Tasks.TaskState; import ProjectData.Project.db_project_info; +import SapforTestingSystem.Json.SapforVersion_json; +import SapforTestingSystem.SapforTask.SapforTask; import Visual_DVM_2021.Passes.PassCode_2021; import Visual_DVM_2021.Passes.PassException; import org.apache.commons.io.FileUtils; @@ -31,6 +34,7 @@ public class SapforTest { Vector outputLines; Vector errorsLines; //--- + public SapforTask taskResult = null; //--- public SapforTest(File sapfor_drv_in, File root_in, String flags_in, List codes_in) { sapfor_drv = sapfor_drv_in; @@ -63,7 +67,7 @@ public class SapforTest { Utils.delete_with_check(outputFile); Utils.delete_with_check(errorsFile); //--- - File file = new File(data_workspace, name + (Global.isWindows?".bat":".sh")); + File file = new File(data_workspace, name + (Global.isWindows ? ".bat" : ".sh")); FileUtils.write(file, Utils.DQuotes(sapfor_drv.getAbsolutePath()) + (flags.isEmpty() ? "" : (" " + flags)) @@ -96,7 +100,7 @@ public class SapforTest { && (new File(parentTask, "dvm.proj")).exists()) { return true; } else { - // taskResult.state = TaskState.DoneWithErrors; + taskResult.state = TaskState.DoneWithErrors; return false; } } @@ -108,13 +112,13 @@ public class SapforTest { "out.txt", "err.txt" )) { - //taskResult.state = TaskState.Done; - //taskResult.versions.add(new SapforVersion_json(task.getAbsolutePath(), code.getDescription())); + taskResult.state = TaskState.Done; + taskResult.versions.add(new SapforVersion_json(task.getAbsolutePath(), code.getDescription())); parentTask = task; return true; } Utils.delete_with_check(task); - // taskResult.state = TaskState.DoneWithErrors; + taskResult.state = TaskState.DoneWithErrors; return false; } protected boolean variants() throws Exception { @@ -127,24 +131,22 @@ public class SapforTest { if ((files_ != null) && (files_.length > 0)) { Vector files = new Vector<>(Arrays.asList(files_)); files.sort(Comparator.comparingInt(o -> Integer.parseInt(o.getName().substring(1)))); - /* taskResult.state = TaskState.Done; for (File file : files) taskResult.variants.add(new SapforVersion_json(file.getAbsolutePath(), PassCode_2021.SPF_CreateParallelVariant.getDescription())); - */ return true; } } - // taskResult.state = TaskState.DoneWithErrors; + taskResult.state = TaskState.DoneWithErrors; return false; } public void Do() throws Exception { parentTask = root; //-- - // taskResult = new SapforTask(); - // taskResult.test_description = test; - // taskResult.sapfortaskspackage_2023_id = Integer.parseInt(packageWorkspace.getName()); - // taskResult.versions.add(new SapforVersion_json(parentTask.getAbsolutePath(), "исходная")); + taskResult = new SapforTask(); + taskResult.test_description = root.getName(); + taskResult.sapfortaskspackage_2023_id = Integer.parseInt(root.getParentFile().getName()); + taskResult.versions.add(new SapforVersion_json(parentTask.getAbsolutePath(), "исходная")); //-- System.out.println(root.getName() + " " + Utils.Brackets(flags)); for (PassCode_2021 code : codes) { @@ -157,7 +159,9 @@ public class SapforTest { } else break; } - //--- - //results.tasks.add(taskResult); + //Запись результатов. + File data_workspace = new File(root, db_project_info.data); + Utils.CheckDirectory(data_workspace); + Utils.jsonToFile(taskResult, new File(data_workspace, "result.txt")); } } diff --git a/src/SapforTestingSystem/SapforTestingPlaner/SapforTestingPlanner.java b/src/SapforTestingSystem/SapforTestingPlaner/SapforTestingPlanner.java index 6509fee0..77a8283a 100644 --- a/src/SapforTestingSystem/SapforTestingPlaner/SapforTestingPlanner.java +++ b/src/SapforTestingSystem/SapforTestingPlaner/SapforTestingPlanner.java @@ -42,4 +42,8 @@ public class SapforTestingPlanner extends ThreadsPlanner { //todo для надежности сделать еще один kill с внешнего процесса. // может быть гонка, что нить успеет запустить процесс уже после интеррупта. } + @Override + protected void finalize() { + System.exit(0); + } } diff --git a/src/Visual_DVM_2021/Passes/All/StartSapforTests.java b/src/Visual_DVM_2021/Passes/All/StartSapforTests.java index c74a8342..7f697f9e 100644 --- a/src/Visual_DVM_2021/Passes/All/StartSapforTests.java +++ b/src/Visual_DVM_2021/Passes/All/StartSapforTests.java @@ -228,8 +228,8 @@ public class StartSapforTests extends Pass_2021 { ShowMessage2("Создание настроек"); GlobalProperties properties = new GlobalProperties(); properties.Mode = Current.Mode.Scenario; - properties.threadsNum = 1; - properties.threadsTimeout = 5000; + properties.threadsNum = 4; + properties.threadsTimeout = 2000; //---- Utils.jsonToFile(properties, new File(target.workspace, "properties")); //----