пауза тестирования. перенос фильтров влево. v++
This commit is contained in:
15
.idea/workspace.xml
generated
15
.idea/workspace.xml
generated
@@ -7,6 +7,17 @@
|
|||||||
</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/PauseDVMPackage.java" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/ResumeDVMPackage.java" afterDir="false" />
|
||||||
|
<change afterPath="$PROJECT_DIR$/src/icons/Resume.png" 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/Visual/DataSetControlForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Visual/DataSetControlForm.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Constants.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Constants.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/TestingSystem/Common/TasksPackageState.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TasksPackageState.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/Common/TestingPlanner.java" afterDir="false" />
|
||||||
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMPackage/UI/DVMPackagesForm.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/DVMPackage/UI/DVMPackagesForm.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/RemoteDVMTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/RemoteDVMTestingPlanner.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/RemoteDVMTestingPlanner.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/TestingSystem/DVM/RemoteDVMTestingPlanner.java" afterDir="false" />
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
@@ -86,7 +97,7 @@
|
|||||||
<property name="UI_DESIGNER_EDITOR_MODE.UIDesignerToolWindowManager.SHOW" value="true" />
|
<property name="UI_DESIGNER_EDITOR_MODE.UIDesignerToolWindowManager.SHOW" value="true" />
|
||||||
<property name="UI_DESIGNER_EDITOR_MODE.UIDesignerToolWindowManager.WIDTH" value="509" />
|
<property name="UI_DESIGNER_EDITOR_MODE.UIDesignerToolWindowManager.WIDTH" value="509" />
|
||||||
<property name="extract.method.default.visibility" value="public" />
|
<property name="extract.method.default.visibility" value="public" />
|
||||||
<property name="last_opened_file_path" value="$PROJECT_DIR$/src/icons/Transformations" />
|
<property name="last_opened_file_path" value="$PROJECT_DIR$/src/icons" />
|
||||||
<property name="project.structure.last.edited" value="Modules" />
|
<property name="project.structure.last.edited" value="Modules" />
|
||||||
<property name="project.structure.proportion" value="0.15" />
|
<property name="project.structure.proportion" value="0.15" />
|
||||||
<property name="project.structure.side.proportion" value="0.2" />
|
<property name="project.structure.side.proportion" value="0.2" />
|
||||||
@@ -99,9 +110,9 @@
|
|||||||
<recent name="controls.Trees" />
|
<recent name="controls.Trees" />
|
||||||
</key>
|
</key>
|
||||||
<key name="CopyFile.RECENT_KEYS">
|
<key name="CopyFile.RECENT_KEYS">
|
||||||
|
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\icons" />
|
||||||
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\icons\Transformations" />
|
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\icons\Transformations" />
|
||||||
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\Common\icons" />
|
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\Common\icons" />
|
||||||
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\icons" />
|
|
||||||
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\icons\versions" />
|
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\icons\versions" />
|
||||||
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\files" />
|
<recent name="C:\Users\misha\Documents\visual_sapfor_2023\src\files" />
|
||||||
</key>
|
</key>
|
||||||
|
|||||||
@@ -68,7 +68,7 @@ public abstract class DataSetControlForm<D extends DBObject> extends ControlForm
|
|||||||
//--
|
//--
|
||||||
counter_ui = (count -> bar.countLabel.setText(String.valueOf(count)));
|
counter_ui = (count -> bar.countLabel.setText(String.valueOf(count)));
|
||||||
//--фильтры всегда в конец бара.
|
//--фильтры всегда в конец бара.
|
||||||
bar.add(new JSeparator());
|
// bar.add(new JSeparator());
|
||||||
for (FilterFlag filter : getFilters(FilterFlag.class)) {
|
for (FilterFlag filter : getFilters(FilterFlag.class)) {
|
||||||
bar.add(filter.getControl());
|
bar.add(filter.getControl());
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,7 +69,9 @@ public class Constants {
|
|||||||
public static final String unknown_metric = " — ";
|
public static final String unknown_metric = " — ";
|
||||||
public static final String tests_db_name = "tests2027";
|
public static final String tests_db_name = "tests2027";
|
||||||
public static final String dateNaN = "NaN";
|
public static final String dateNaN = "NaN";
|
||||||
//------
|
//--
|
||||||
|
public static final String pause = "pause";
|
||||||
|
//--
|
||||||
public static final String[] crushed_cases = new String[]{
|
public static final String[] crushed_cases = new String[]{
|
||||||
"rts err",
|
"rts err",
|
||||||
"rts stack trace",
|
"rts stack trace",
|
||||||
|
|||||||
49
src/_VisualDVM/Passes/All/PauseDVMPackage.java
Normal file
49
src/_VisualDVM/Passes/All/PauseDVMPackage.java
Normal file
@@ -0,0 +1,49 @@
|
|||||||
|
package _VisualDVM.Passes.All;
|
||||||
|
import _VisualDVM.Constants;
|
||||||
|
import _VisualDVM.Global;
|
||||||
|
import _VisualDVM.GlobalData.RemoteFile.RemoteFile;
|
||||||
|
import _VisualDVM.Passes.SSH.ConnectionPass;
|
||||||
|
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
public class PauseDVMPackage extends ConnectionPass<DVMPackage> {
|
||||||
|
@Override
|
||||||
|
public String getIconPath() {
|
||||||
|
return "/icons/Pause.png";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getButtonText() {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected boolean canStart(Object... args) throws Exception {
|
||||||
|
if (!Global.testingServer.db.dvmPackages.getUI().CheckCurrent(Log))
|
||||||
|
return false;
|
||||||
|
target = Global.testingServer.db.dvmPackages.getUI().getCurrent();
|
||||||
|
switch (target.state){
|
||||||
|
case CompilationExecution:
|
||||||
|
case RunningExecution:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
Log.Writeln_("Возможно поставить на паузу только пакет в состоянии [компиляция] или [запуск]");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
machine =target.getMachine();
|
||||||
|
user = target.getUser();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void ServerAction() throws Exception {
|
||||||
|
RemoteFile packageRemoteWorkspace = new RemoteFile(
|
||||||
|
target.user_workspace+ "/tests", String.valueOf(target.id), true);
|
||||||
|
if (user.connection.Exists(packageRemoteWorkspace)){
|
||||||
|
try {
|
||||||
|
RemoteFile pauseFile = new RemoteFile(packageRemoteWorkspace, Constants.pause);
|
||||||
|
user.connection.writeToFile("pause at "+new Date(), pauseFile);
|
||||||
|
}
|
||||||
|
catch (Exception ex){
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
46
src/_VisualDVM/Passes/All/ResumeDVMPackage.java
Normal file
46
src/_VisualDVM/Passes/All/ResumeDVMPackage.java
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
package _VisualDVM.Passes.All;
|
||||||
|
import _VisualDVM.Constants;
|
||||||
|
import _VisualDVM.Global;
|
||||||
|
import _VisualDVM.GlobalData.RemoteFile.RemoteFile;
|
||||||
|
import _VisualDVM.Passes.SSH.ConnectionPass;
|
||||||
|
import _VisualDVM.TestingSystem.DVM.DVMPackage.DVMPackage;
|
||||||
|
public class ResumeDVMPackage extends ConnectionPass<DVMPackage> {
|
||||||
|
@Override
|
||||||
|
public String getIconPath() {
|
||||||
|
return "/icons/Resume.png";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public String getButtonText() {
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected boolean canStart(Object... args) throws Exception {
|
||||||
|
if (!Global.testingServer.db.dvmPackages.getUI().CheckCurrent(Log))
|
||||||
|
return false;
|
||||||
|
target = Global.testingServer.db.dvmPackages.getUI().getCurrent();
|
||||||
|
switch (target.state) {
|
||||||
|
case Paused:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
Log.Writeln_("Возможно возобновить только пакет в состоянии [пауза]");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
machine = target.getMachine();
|
||||||
|
user = target.getUser();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
protected void ServerAction() throws Exception {
|
||||||
|
RemoteFile packageRemoteWorkspace = new RemoteFile(
|
||||||
|
target.user_workspace + "/tests", String.valueOf(target.id), true);
|
||||||
|
if (user.connection.Exists(packageRemoteWorkspace)) {
|
||||||
|
try {
|
||||||
|
RemoteFile pauseFile = new RemoteFile(packageRemoteWorkspace, Constants.pause);
|
||||||
|
if (user.connection.Exists(pauseFile))
|
||||||
|
user.connection.sftpChannel.rm(pauseFile.full_name);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -352,11 +352,18 @@ public enum PassCode implements PassCode_ {
|
|||||||
DeleteDVMSettings,
|
DeleteDVMSettings,
|
||||||
CloneDVMSettings,
|
CloneDVMSettings,
|
||||||
CloneSapforSettings,
|
CloneSapforSettings,
|
||||||
SetSapforConfigurationEthalon;
|
SetSapforConfigurationEthalon,
|
||||||
|
PauseDVMPackage,
|
||||||
|
ResumeDVMPackage,
|
||||||
|
;
|
||||||
//--
|
//--
|
||||||
@Override
|
@Override
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
switch (this) {
|
switch (this) {
|
||||||
|
case ResumeDVMPackage:
|
||||||
|
return "Возобновить выполнение пакета тестировани DVM";
|
||||||
|
case PauseDVMPackage:
|
||||||
|
return "Поставить пакет тестирования DVM на паузу";
|
||||||
case SetDefaultSapforProfile:
|
case SetDefaultSapforProfile:
|
||||||
return "Установить профиль SAPFOR по умолчанию";
|
return "Установить профиль SAPFOR по умолчанию";
|
||||||
case UpdateSapforProperty:
|
case UpdateSapforProperty:
|
||||||
|
|||||||
@@ -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 = 1144;
|
version = 1145;
|
||||||
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());
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ public enum TasksPackageState implements StatusEnum {
|
|||||||
//--
|
//--
|
||||||
Inactive, //пакет просто есть. не запущен.
|
Inactive, //пакет просто есть. не запущен.
|
||||||
Queued,
|
Queued,
|
||||||
|
Paused,
|
||||||
//--
|
//--
|
||||||
TestsSynchronize, //оставить.
|
TestsSynchronize, //оставить.
|
||||||
PackageWorkspaceCreation,
|
PackageWorkspaceCreation,
|
||||||
@@ -58,6 +59,7 @@ public enum TasksPackageState implements StatusEnum {
|
|||||||
case TestsSynchronize:
|
case TestsSynchronize:
|
||||||
case Analysis:
|
case Analysis:
|
||||||
case Draft:
|
case Draft:
|
||||||
|
case Paused:
|
||||||
return VisualiserFonts.BlueState;
|
return VisualiserFonts.BlueState;
|
||||||
case CompilationExecution:
|
case CompilationExecution:
|
||||||
case RunningExecution:
|
case RunningExecution:
|
||||||
@@ -109,6 +111,8 @@ public enum TasksPackageState implements StatusEnum {
|
|||||||
return "сбой связи";
|
return "сбой связи";
|
||||||
case DoneWithErrors:
|
case DoneWithErrors:
|
||||||
return "завершен с ошибками";
|
return "завершен с ошибками";
|
||||||
|
case Paused:
|
||||||
|
return "пауза";
|
||||||
default:
|
default:
|
||||||
return StatusEnum.super.getDescription();
|
return StatusEnum.super.getDescription();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,6 +6,7 @@ import _VisualDVM.Constants;
|
|||||||
import _VisualDVM.Global;
|
import _VisualDVM.Global;
|
||||||
import _VisualDVM.GlobalData.Machine.Machine;
|
import _VisualDVM.GlobalData.Machine.Machine;
|
||||||
import _VisualDVM.GlobalData.Machine.MachineType;
|
import _VisualDVM.GlobalData.Machine.MachineType;
|
||||||
|
import _VisualDVM.GlobalData.RemoteFile.RemoteFile;
|
||||||
import _VisualDVM.GlobalData.User.User;
|
import _VisualDVM.GlobalData.User.User;
|
||||||
import _VisualDVM.Repository.EmailMessage;
|
import _VisualDVM.Repository.EmailMessage;
|
||||||
import _VisualDVM.Repository.Server.ServerCode;
|
import _VisualDVM.Repository.Server.ServerCode;
|
||||||
@@ -139,30 +140,32 @@ public abstract class TestingPlanner<P extends TestingPackage> extends TestingCl
|
|||||||
}
|
}
|
||||||
protected void MachineConnectionError() {
|
protected void MachineConnectionError() {
|
||||||
}
|
}
|
||||||
|
protected boolean checkIfPaused() throws Exception {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
protected void PerformPackage(TestingPackage package_in) throws Exception {
|
protected void PerformPackage(TestingPackage package_in) throws Exception {
|
||||||
testingPackage = (P) package_in;
|
testingPackage = (P) package_in;
|
||||||
//--
|
//--
|
||||||
Print(testingPackage.id + ":" + testingPackage.state.getDescription());
|
Print(testingPackage.id + ":" + testingPackage.state.getDescription());
|
||||||
//--
|
//--
|
||||||
// if (testingPackage.connectionErrosCount >= 10) {
|
|
||||||
// Print(testingPackage.id + " had 10 connection errors. stop");
|
|
||||||
// UpdatePackageState(TasksPackageState.ConnectionError);
|
|
||||||
// MachineConnectionError();
|
|
||||||
// } else {
|
|
||||||
//--
|
|
||||||
InitSessionCredentials();
|
InitSessionCredentials();
|
||||||
if (testingPackage.state.equals(TasksPackageState.Analysis)) {
|
if (testingPackage.state.equals(TasksPackageState.Analysis)) {
|
||||||
AnalyseResults();
|
AnalyseResults();
|
||||||
} else {
|
} else {
|
||||||
try {
|
try {
|
||||||
if (Connect()) {
|
if (Connect()) {
|
||||||
|
//проверка на убийство и паузу
|
||||||
int ptk_id = (int) ServerCommand(getCheckIfNeedsKillCode(), testingPackage.id);
|
int ptk_id = (int) ServerCommand(getCheckIfNeedsKillCode(), testingPackage.id);
|
||||||
if (ptk_id != CommonConstants.Nan) {
|
if (ptk_id != CommonConstants.Nan) {
|
||||||
Print("package " + testingPackage.id + " NEEDS TO KILL");
|
Print("package " + testingPackage.id + " NEEDS TO KILL");
|
||||||
Kill();
|
Kill();
|
||||||
UpdatePackageState(TasksPackageState.Aborted);
|
UpdatePackageState(TasksPackageState.Aborted);
|
||||||
ServerCommand(ServerCode.DeleteObjectByPK, new Pair(TestingPackageToKill.class, ptk_id));
|
ServerCommand(ServerCode.DeleteObjectByPK, new Pair(TestingPackageToKill.class, ptk_id));
|
||||||
} else {
|
}
|
||||||
|
else if (checkIfPaused()) {
|
||||||
|
UpdatePackageState(TasksPackageState.Paused);
|
||||||
|
}
|
||||||
|
else {
|
||||||
//--
|
//--
|
||||||
switch (testingPackage.state) {
|
switch (testingPackage.state) {
|
||||||
case TestsSynchronize:
|
case TestsSynchronize:
|
||||||
@@ -182,6 +185,10 @@ public abstract class TestingPlanner<P extends TestingPackage> extends TestingCl
|
|||||||
DownloadResults();
|
DownloadResults();
|
||||||
UpdatePackageState(TasksPackageState.Analysis);
|
UpdatePackageState(TasksPackageState.Analysis);
|
||||||
break;
|
break;
|
||||||
|
case Paused:
|
||||||
|
if (!checkIfPaused()&&CheckNextState())
|
||||||
|
UpdatePackage();
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
if (CheckNextState()) UpdatePackage();
|
if (CheckNextState()) UpdatePackage();
|
||||||
break;
|
break;
|
||||||
@@ -196,14 +203,10 @@ public abstract class TestingPlanner<P extends TestingPackage> extends TestingCl
|
|||||||
Print("Ошибка сеанса. Соединение будет разорвано.");
|
Print("Ошибка сеанса. Соединение будет разорвано.");
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
Print(ex.getMessage());
|
Print(ex.getMessage());
|
||||||
//
|
|
||||||
// testingPackage.connectionErrosCount++;
|
|
||||||
// UpdatePackage();
|
|
||||||
} finally {
|
} finally {
|
||||||
Disconnect();
|
Disconnect();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// }
|
|
||||||
//--
|
//--
|
||||||
testingPackage.destructor();
|
testingPackage.destructor();
|
||||||
testingPackage = null;
|
testingPackage = null;
|
||||||
|
|||||||
@@ -138,7 +138,7 @@ public class DVMPackagesForm extends DataSetControlForm<DVMPackage> {
|
|||||||
{
|
{
|
||||||
addPasses(PassCode.SynchronizeTests);
|
addPasses(PassCode.SynchronizeTests);
|
||||||
addSeparator();
|
addSeparator();
|
||||||
addPasses(PassCode.AbortDVMPackage);
|
addPasses(PassCode.PauseDVMPackage,PassCode.ResumeDVMPackage,PassCode.AbortDVMPackage);
|
||||||
addSeparator();
|
addSeparator();
|
||||||
addPasses(PassCode.DownloadDVMPackage,
|
addPasses(PassCode.DownloadDVMPackage,
|
||||||
PassCode.ExportDVMPackageToExcel,
|
PassCode.ExportDVMPackageToExcel,
|
||||||
|
|||||||
@@ -58,6 +58,11 @@ public class RemoteDVMTestingPlanner extends DVMTestingPlanner {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
@Override
|
@Override
|
||||||
|
protected boolean checkIfPaused() throws Exception {
|
||||||
|
RemoteFile pausedFile = new RemoteFile(packageRemoteWorkspace, Constants.pause);
|
||||||
|
return user.connection.Exists(pausedFile);
|
||||||
|
}
|
||||||
|
@Override
|
||||||
protected void PackageWorkspaceCreation() throws Exception {
|
protected void PackageWorkspaceCreation() throws Exception {
|
||||||
if (!CheckModules()) {
|
if (!CheckModules()) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
BIN
src/icons/Resume.png
Normal file
BIN
src/icons/Resume.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 983 B |
Reference in New Issue
Block a user