v++
Массовое определение размерности тестов
This commit is contained in:
8
.idea/workspace.xml
generated
8
.idea/workspace.xml
generated
@@ -7,9 +7,15 @@
|
|||||||
</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/_VisualDVM/Passes/All/DetectSelectedTestsMinMaDim.java" 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$/properties" beforeDir="false" afterPath="$PROJECT_DIR$/properties" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/RefreshDVMPackageResults.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/RefreshDVMPackageResults.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/RefreshDVMPackageResults.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/RefreshDVMPackageResults.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Utils.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Utils.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/PassCode.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Visualiser.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Component/Visualiser.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Repository/Server/ServerCode.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Test/UI/TestsForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/Test/UI/TestsForm.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingServer.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" />
|
||||||
|
|||||||
@@ -32,7 +32,7 @@
|
|||||||
"EmptyLinesOn": false,
|
"EmptyLinesOn": false,
|
||||||
"FortranWrapsOn": false,
|
"FortranWrapsOn": false,
|
||||||
"ExtensionsOn": false,
|
"ExtensionsOn": false,
|
||||||
"ComparsionDiffMergeOn": false,
|
"ComparsionDiffMergeOn": true,
|
||||||
"ShowFullArraysDeclarations": false,
|
"ShowFullArraysDeclarations": false,
|
||||||
"ShowFullTabsNames": true,
|
"ShowFullTabsNames": true,
|
||||||
"SmallScreen": false,
|
"SmallScreen": false,
|
||||||
|
|||||||
25
src/_VisualDVM/Passes/All/DetectSelectedTestsMinMaDim.java
Normal file
25
src/_VisualDVM/Passes/All/DetectSelectedTestsMinMaDim.java
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
package _VisualDVM.Passes.All;
|
||||||
|
import _VisualDVM.Global;
|
||||||
|
import _VisualDVM.Passes.PassCode;
|
||||||
|
import _VisualDVM.Passes.Server.TestingServerPass;
|
||||||
|
import _VisualDVM.Repository.Server.ServerCode;
|
||||||
|
import _VisualDVM.TestingSystem.Common.Test.Test;
|
||||||
|
|
||||||
|
import java.util.Vector;
|
||||||
|
public class DetectSelectedTestsMinMaDim extends TestingServerPass<Vector<Object>> {
|
||||||
|
@Override
|
||||||
|
public String getIconPath() {
|
||||||
|
return "/icons/Arrays.png";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected boolean canStart(Object... args) throws Exception {
|
||||||
|
if (!Global.testingServer.db.tests.getUI().CheckSelectedOrCurrent(Log))
|
||||||
|
return false;
|
||||||
|
target=Global.testingServer.db.tests.getUI().getSelectedOrCurrentKeys();
|
||||||
|
return SendRequest(ServerCode.DetectTestsMinMaxDim, "",target, 0);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void performDone() throws Exception {
|
||||||
|
Global.mainModule.getPass(PassCode.SynchronizeTests).Do();
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -119,9 +119,4 @@ public class RefreshDVMPackageResults extends TestingServerPass<DVMPackage> {
|
|||||||
);
|
);
|
||||||
Global.mainModule.getPass(PassCode.SynchronizeTests).Do();
|
Global.mainModule.getPass(PassCode.SynchronizeTests).Do();
|
||||||
}
|
}
|
||||||
@Override
|
|
||||||
protected void showFinish() throws Exception {
|
|
||||||
super.showFinish();
|
|
||||||
Global.testingServer.db.dvmPackages.getUI().SetCurrentByPK(target.id);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -356,11 +356,13 @@ public enum PassCode implements PassCode_ {
|
|||||||
ResumeDVMPackage,
|
ResumeDVMPackage,
|
||||||
JoinSapforTestingVersionsToGroup,
|
JoinSapforTestingVersionsToGroup,
|
||||||
RefreshDVMPackageResults,
|
RefreshDVMPackageResults,
|
||||||
;
|
DetectSelectedTestsMinMaDim;
|
||||||
//--
|
//--
|
||||||
@Override
|
@Override
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
switch (this) {
|
switch (this) {
|
||||||
|
case DetectSelectedTestsMinMaDim:
|
||||||
|
return "Определить размерность тестов";
|
||||||
case RefreshDVMPackageResults:
|
case RefreshDVMPackageResults:
|
||||||
return "Обновить результаты анализа пакета тестирования DVM";
|
return "Обновить результаты анализа пакета тестирования DVM";
|
||||||
case JoinSapforTestingVersionsToGroup:
|
case JoinSapforTestingVersionsToGroup:
|
||||||
|
|||||||
@@ -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 = 1160;
|
version = 1161;
|
||||||
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());
|
||||||
|
|||||||
@@ -92,9 +92,11 @@ public enum ServerCode {
|
|||||||
GetMaxSapforVersion,
|
GetMaxSapforVersion,
|
||||||
PerformAutoSapforTesting,
|
PerformAutoSapforTesting,
|
||||||
JoinSapforVersionsToGroup,
|
JoinSapforVersionsToGroup,
|
||||||
TestCode, ReplaceDVMPackageResults;
|
TestCode, ReplaceDVMPackageResults, DetectTestsMinMaxDim;
|
||||||
public String getDescription(){
|
public String getDescription(){
|
||||||
switch (this){
|
switch (this){
|
||||||
|
case DetectTestsMinMaxDim:
|
||||||
|
return "Определить размерность тестов на сервере";
|
||||||
case ReplaceDVMPackageResults:
|
case ReplaceDVMPackageResults:
|
||||||
return "Заменить json DVM пакета";
|
return "Заменить json DVM пакета";
|
||||||
case JoinSapforVersionsToGroup:
|
case JoinSapforVersionsToGroup:
|
||||||
|
|||||||
@@ -55,7 +55,7 @@ public class TestsForm extends DataSetControlForm<Test> {
|
|||||||
return new DataMenuBar(dataSource.getPluralDescription()) {
|
return new DataMenuBar(dataSource.getPluralDescription()) {
|
||||||
{
|
{
|
||||||
addMenus(new AddTestMenu(), new EditTestMenu());
|
addMenus(new AddTestMenu(), new EditTestMenu());
|
||||||
addPasses(PassCode.DownloadTest, PassCode.DeleteTest);
|
addPasses(PassCode.DetectSelectedTestsMinMaDim,PassCode.DownloadTest, PassCode.DeleteTest);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -381,6 +381,10 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
Print("Заменить json DVM пакета");
|
Print("Заменить json DVM пакета");
|
||||||
ReplaceDVMPackageJson();
|
ReplaceDVMPackageJson();
|
||||||
break;
|
break;
|
||||||
|
case DetectTestsMinMaxDim:
|
||||||
|
Print("Определить размерность тестов");
|
||||||
|
DetectTestsMinMaxDim();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
throw new RepositoryRefuseException("Неподдерживаемый код: " + code);
|
throw new RepositoryRefuseException("Неподдерживаемый код: " + code);
|
||||||
}
|
}
|
||||||
@@ -805,7 +809,7 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
task.test_description,
|
task.test_description,
|
||||||
versionProject.getName()
|
versionProject.getName()
|
||||||
);
|
);
|
||||||
versions.put(String.join("_", name_parts),versionProject);
|
versions.put(String.join("_", name_parts), versionProject);
|
||||||
paths.add(versionProject.getAbsolutePath());
|
paths.add(versionProject.getAbsolutePath());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -814,11 +818,11 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
Vector<Test> tests = new Vector<>();
|
Vector<Test> tests = new Vector<>();
|
||||||
for (String description : versions.keySet()) {
|
for (String description : versions.keySet()) {
|
||||||
File src = versions.get(description);
|
File src = versions.get(description);
|
||||||
File [] files = src.listFiles(pathname -> !pathname.isDirectory());
|
File[] files = src.listFiles(pathname -> !pathname.isDirectory());
|
||||||
if (files!=null && files.length>0){
|
if (files != null && files.length > 0) {
|
||||||
//--
|
//--
|
||||||
Vector<String> filesNames = new Vector<>();
|
Vector<String> filesNames = new Vector<>();
|
||||||
for (File file: files)
|
for (File file : files)
|
||||||
filesNames.add(file.getName());
|
filesNames.add(file.getName());
|
||||||
//--
|
//--
|
||||||
Test test = new Test();
|
Test test = new Test();
|
||||||
@@ -848,9 +852,9 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
}
|
}
|
||||||
//определение размерности тестов
|
//определение размерности тестов
|
||||||
ServerSapfor serverSapfor = db.serverSapfors.getLastDoneVersion();
|
ServerSapfor serverSapfor = db.serverSapfors.getLastDoneVersion();
|
||||||
if (serverSapfor!=null){
|
if (serverSapfor != null) {
|
||||||
File sapfor_copy = Sapfor.getTempCopy(new File(serverSapfor.call_command));
|
File sapfor_copy = Sapfor.getTempCopy(new File(serverSapfor.call_command));
|
||||||
for (Test test: tests){
|
for (Test test : tests) {
|
||||||
try {
|
try {
|
||||||
Sapfor.getMinMaxDim(sapfor_copy, test.getServerPath(), test);
|
Sapfor.getMinMaxDim(sapfor_copy, test.getServerPath(), test);
|
||||||
db.Update(test);
|
db.Update(test);
|
||||||
@@ -859,26 +863,55 @@ public class TestingServer extends RepositoryServer<TestsDatabase> {
|
|||||||
);
|
);
|
||||||
File visualiser_data = new File(test.getServerPath(), Constants.data);
|
File visualiser_data = new File(test.getServerPath(), Constants.data);
|
||||||
FileUtils.forceDelete(visualiser_data);
|
FileUtils.forceDelete(visualiser_data);
|
||||||
}
|
} catch (Exception ex) {
|
||||||
catch (Exception ex){
|
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//-"sh"
|
//-"sh"
|
||||||
}
|
}
|
||||||
private void ReplaceDVMPackageJson() throws Exception{
|
private void ReplaceDVMPackageJson() throws Exception {
|
||||||
response= new ServerExchangeUnit_2021(ServerCode.OK);
|
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||||
Pair<DVMPackage, byte[]> p = (Pair<DVMPackage, byte[]>) request.object;
|
Pair<DVMPackage, byte[]> p = (Pair<DVMPackage, byte[]>) request.object;
|
||||||
DVMPackage src = p.getKey();
|
DVMPackage src = p.getKey();
|
||||||
byte[] packed_file = p.getValue();
|
byte[] packed_file = p.getValue();
|
||||||
//todo написать стандартное исключение на несуществование объекта с ключом
|
//todo написать стандартное исключение на несуществование объекта с ключом
|
||||||
if (!db.dvmPackages.containsKey(src.id))
|
if (!db.dvmPackages.containsKey(src.id))
|
||||||
throw new RepositoryRefuseException("не существует пакета с ключом "+src.id);
|
throw new RepositoryRefuseException("не существует пакета с ключом " + src.id);
|
||||||
DVMPackage dst = db.dvmPackages.get(src.id);
|
DVMPackage dst = db.dvmPackages.get(src.id);
|
||||||
dst.SynchronizeFields(src);
|
dst.SynchronizeFields(src);
|
||||||
db.Update(dst);
|
db.Update(dst);
|
||||||
Utils_.bytesToFile(packed_file, dst.getJsonFile());
|
Utils_.bytesToFile(packed_file, dst.getJsonFile());
|
||||||
}
|
}
|
||||||
|
private void DetectTestsMinMaxDim() throws Exception {
|
||||||
|
response = new ServerExchangeUnit_2021(ServerCode.OK);
|
||||||
|
Vector<Object> keys = (Vector<Object>) request.object;
|
||||||
|
for (Object key : keys) {
|
||||||
|
if (!db.tests.containsKey(key))
|
||||||
|
throw new RepositoryRefuseException("не существует пакета с ключом " + key);
|
||||||
|
}
|
||||||
|
//определение размерности тестов
|
||||||
|
ServerSapfor serverSapfor = db.serverSapfors.getLastDoneVersion();
|
||||||
|
if (serverSapfor != null) {
|
||||||
|
File sapfor_copy = Sapfor.getTempCopy(new File(serverSapfor.call_command));
|
||||||
|
for (Object key : keys) {
|
||||||
|
Test test = db.tests.get(key);
|
||||||
|
Group group = db.groups.get(test.group_id);
|
||||||
|
if (group.language.equals(LanguageName.fortran)) {
|
||||||
|
try {
|
||||||
|
Sapfor.getMinMaxDim(sapfor_copy, test.getServerPath(), test);
|
||||||
|
db.Update(test);
|
||||||
|
Utils.deleteFilesByExtensions(test.getServerPath(),
|
||||||
|
"proj", "dep", "jar"
|
||||||
|
);
|
||||||
|
File visualiser_data = new File(test.getServerPath(), Constants.data);
|
||||||
|
FileUtils.forceDelete(visualiser_data);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user