Bug 553485: [Rhino Debug] engine termination is not working
enabled tests
fixed termination (we did not wake up the engine thread)
Change-Id: Ifc293f98db45af23942bddcb8600b4e676b76d3c
diff --git a/plugins/org.eclipse.ease.lang.javascript.rhino/META-INF/MANIFEST.MF b/plugins/org.eclipse.ease.lang.javascript.rhino/META-INF/MANIFEST.MF
index a94551d..79283f0 100644
--- a/plugins/org.eclipse.ease.lang.javascript.rhino/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.ease.lang.javascript.rhino/META-INF/MANIFEST.MF
@@ -11,7 +11,7 @@
org.eclipse.ease.lang.javascript,
org.eclipse.ease,
org.eclipse.ease.classloader,
- org.eclipse.debug.core,
+ org.eclipse.debug.core;bundle-version="[3.7.1,4.0.0)",
org.eclipse.debug.ui;bundle-version="[3.7.102,4.0.0)",
org.eclipse.ui.workbench;bundle-version="[3.7.1,4.0.0)",
org.eclipse.ui.ide;bundle-version="[3.7.0,4.0.0)",
diff --git a/plugins/org.eclipse.ease.lang.javascript.rhino/src/org/eclipse/ease/lang/javascript/rhino/debugger/RhinoDebugger.java b/plugins/org.eclipse.ease.lang.javascript.rhino/src/org/eclipse/ease/lang/javascript/rhino/debugger/RhinoDebugger.java
index 508180e..62da7aa 100644
--- a/plugins/org.eclipse.ease.lang.javascript.rhino/src/org/eclipse/ease/lang/javascript/rhino/debugger/RhinoDebugger.java
+++ b/plugins/org.eclipse.ease.lang.javascript.rhino/src/org/eclipse/ease/lang/javascript/rhino/debugger/RhinoDebugger.java
@@ -134,7 +134,7 @@
// we do not need the scope any longer
fScope = null;
- if (getScript() != null)
+ if ((!byThrow) && (getScript() != null))
processLine(getScript(), getLineNumber());
}
diff --git a/plugins/org.eclipse.ease.lang.python/src/org/eclipse/ease/lang/python/debugger/model/PythonDebugTarget.java b/plugins/org.eclipse.ease.lang.python/src/org/eclipse/ease/lang/python/debugger/model/PythonDebugTarget.java
index 81dc15f..3e131dc 100644
--- a/plugins/org.eclipse.ease.lang.python/src/org/eclipse/ease/lang/python/debugger/model/PythonDebugTarget.java
+++ b/plugins/org.eclipse.ease.lang.python/src/org/eclipse/ease/lang/python/debugger/model/PythonDebugTarget.java
@@ -21,7 +21,7 @@
* ScriptDebugTarget for communication between Eclipse framework and Python debugger.
*/
public class PythonDebugTarget extends EaseDebugTarget {
- private static final String pyBreakpointType = PythonDebugModelPresentation.ID;
+ private static final String BREAKPOINT_TYPE = PythonDebugModelPresentation.ID;
public PythonDebugTarget(final ILaunch launch, final boolean suspendOnStartup, final boolean suspendOnScriptLoad, boolean showDynamicCode) {
super(launch, suspendOnStartup, suspendOnScriptLoad, showDynamicCode);
@@ -39,7 +39,7 @@
*/
@Override
protected IBreakpoint[] getBreakpoints(final Script script) {
- return DebugPlugin.getDefault().getBreakpointManager().getBreakpoints(pyBreakpointType);
+ return DebugPlugin.getDefault().getBreakpointManager().getBreakpoints(BREAKPOINT_TYPE);
}
@Override
diff --git a/plugins/org.eclipse.ease/src/org/eclipse/ease/debugging/AbstractEaseDebugger.java b/plugins/org.eclipse.ease/src/org/eclipse/ease/debugging/AbstractEaseDebugger.java
index 3223886..f01693c 100644
--- a/plugins/org.eclipse.ease/src/org/eclipse/ease/debugging/AbstractEaseDebugger.java
+++ b/plugins/org.eclipse.ease/src/org/eclipse/ease/debugging/AbstractEaseDebugger.java
@@ -24,6 +24,7 @@
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.debug.core.model.IDebugElement;
import org.eclipse.ease.Activator;
+import org.eclipse.ease.ExitException;
import org.eclipse.ease.IDebugEngine;
import org.eclipse.ease.IExecutionListener;
import org.eclipse.ease.IScriptEngine;
@@ -172,16 +173,18 @@
}
}
- } else if (event instanceof TerminateRequest) {
- fBreakpoints.clear();
- getEngine().terminate();
- fireDispatchEvent(new EngineTerminatedEvent());
- setDispatcher(null);
-
} else if (event instanceof SuspendRequest) {
final ThreadState threadState = getThreadState(((AbstractEvent) event).getThread());
threadState.fResumeType = DebugEvent.STEP_INTO;
+ } else if (event instanceof TerminateRequest) {
+ fEvaluationRequests.add((AbstractEvent) event);
+ for (final ThreadState threadState : fThreadStates.values()) {
+ synchronized (threadState) {
+ threadState.notify();
+ }
+ }
+
} else if (event instanceof AbstractEvent) {
fEvaluationRequests.add((AbstractEvent) event);
final ThreadState threadState = getThreadState(((AbstractEvent) event).getThread());
@@ -259,6 +262,7 @@
while (!requests.isEmpty()) {
final AbstractEvent request = requests.remove(0);
final ThreadState threadStateForRequest = getThreadState(request.getThread());
+
if (threadState.equals(threadStateForRequest)) {
// we handle this event, remove from queue
@@ -307,6 +311,9 @@
resume(((ResumeRequest) request).getType(), ((ResumeRequest) request).getThread());
}
}
+
+ if (request instanceof TerminateRequest)
+ throw new ExitException("Engine termination requested by user");
}
}
diff --git a/tests/org.eclipse.ease.lang.python.jython.test/.classpath b/tests/org.eclipse.ease.lang.python.jython.test/.classpath
index 3e5654f..43b9862 100644
--- a/tests/org.eclipse.ease.lang.python.jython.test/.classpath
+++ b/tests/org.eclipse.ease.lang.python.jython.test/.classpath
@@ -2,10 +2,6 @@
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src">
- <attributes>
- <attribute name="test" value="true"/>
- </attributes>
- </classpathentry>
- <classpathentry kind="output" path="bin"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/tests/org.eclipse.ease.lang.python.jython.test/META-INF/MANIFEST.MF b/tests/org.eclipse.ease.lang.python.jython.test/META-INF/MANIFEST.MF
index 90b0f92..a1324d5 100644
--- a/tests/org.eclipse.ease.lang.python.jython.test/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.ease.lang.python.jython.test/META-INF/MANIFEST.MF
@@ -1,9 +1,13 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Jython Engine Tests
-Bundle-SymbolicName: org.eclipse.ease.lang.python.jython.test
+Bundle-SymbolicName: org.eclipse.ease.lang.python.jython.test;singleton:=true
Bundle-Version: 0.8.0.qualifier
Fragment-Host: org.eclipse.ease.lang.python.jython;bundle-version="0.8.0"
Automatic-Module-Name: org.eclipse.ease.lang.python.jython.test
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Require-Bundle: org.eclipse.ease.testhelper
+Require-Bundle: org.junit;bundle-version="[4.11.0,5.0.0)",
+ org.eclipse.ui.workbench;bundle-version="[3.106.2,4.0.0)",
+ org.mockito;bundle-version="[1.9.5,2.0.0)",
+ org.eclipse.ease.testhelper,
+ org.hamcrest;bundle-version="1.1.0"
diff --git a/tests/org.eclipse.ease.lang.python.jython.test/src/org/eclipse/ease/lang/python/jython/debugger/JythonDebugTest.java b/tests/org.eclipse.ease.lang.python.jython.test/src/org/eclipse/ease/lang/python/jython/debugger/JythonDebugTest.java
index 1496e20..0ff8132 100644
--- a/tests/org.eclipse.ease.lang.python.jython.test/src/org/eclipse/ease/lang/python/jython/debugger/JythonDebugTest.java
+++ b/tests/org.eclipse.ease.lang.python.jython.test/src/org/eclipse/ease/lang/python/jython/debugger/JythonDebugTest.java
@@ -20,6 +20,8 @@
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.debug.core.model.LineBreakpoint;
import org.eclipse.ease.testhelper.AbstractDebugTest;
+import org.junit.Ignore;
+import org.junit.Test;
public class JythonDebugTest extends AbstractDebugTest {
@@ -59,4 +61,234 @@
protected String getEngineId() {
return JythonDebuggerEngine.ENGINE_ID;
}
+
+ // FIXME tests temporarily disabled as they fail when loading the python debug target
+
+ @Override
+ @Test
+ @Ignore
+ public void hasDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void breakpointLocation() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnProcess() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnThread() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnStackFrame() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnProcess() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnThread() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnStackFrame() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnProcess() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnThread() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnStackFrame() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnDebugTarget() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnProcess() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnThread() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnStackFrame() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateDebugTargetInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateProcessInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateThreadInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateStackFrameInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectDebugTargetInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectProcessInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectThreadInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectStackFrameInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void evaluateWatchExpression() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void suspendedState() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminatedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void primitiveDoubleVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void primitiveStringVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void nullVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void nativeArrayVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void arrayVariableSorting() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void nativeObjectVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void javaClassVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void innerScopeVariableBeforeOuterScopeVariable() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void modifyVariableKeepingType() throws CoreException, IOException {
+ }
}
diff --git a/tests/org.eclipse.ease.lang.python.py4j.test/src/org/eclipse/ease/lang/python/py4j/Py4jDebugTest.java b/tests/org.eclipse.ease.lang.python.py4j.test/src/org/eclipse/ease/lang/python/py4j/Py4jDebugTest.java
index b8951fd..950743e 100644
--- a/tests/org.eclipse.ease.lang.python.py4j.test/src/org/eclipse/ease/lang/python/py4j/Py4jDebugTest.java
+++ b/tests/org.eclipse.ease.lang.python.py4j.test/src/org/eclipse/ease/lang/python/py4j/Py4jDebugTest.java
@@ -23,6 +23,8 @@
import org.eclipse.debug.core.model.LineBreakpoint;
import org.eclipse.ease.lang.python.py4j.internal.Py4jDebuggerEngine;
import org.eclipse.ease.testhelper.AbstractDebugTest;
+import org.junit.Ignore;
+import org.junit.Test;
public class Py4jDebugTest extends AbstractDebugTest {
@@ -64,14 +66,236 @@
}
@Override
+ @Test
+ @Ignore
public void nativeObjectVariable() throws CoreException, IOException {
// TODO: Currently not possible to access native Python variables
assumeTrue(false);
}
@Override
+ @Test
+ @Ignore
public void nativeArrayVariable() throws CoreException, IOException {
// TODO: Currently not possible to access native Python variables
assumeTrue(false);
}
+
+ // FIXME tests temporarily disabled as they fail when loading the python debug target
+
+ @Override
+ @Test
+ @Ignore
+ public void hasDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void breakpointLocation() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnProcess() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnThread() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepOverOnStackFrame() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnProcess() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnThread() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepIntoOnStackFrame() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnDebugTarget() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnProcess() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnThread() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void stepReturnOnStackFrame() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnDebugTarget() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnProcess() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnThread() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void resumeOnStackFrame() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateDebugTargetInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateProcessInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateThreadInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminateStackFrameInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectDebugTargetInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectProcessInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectThreadInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void disconnectStackFrameInSuspendedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void evaluateWatchExpression() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void suspendedState() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void terminatedState() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void primitiveDoubleVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void primitiveStringVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void nullVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void arrayVariableSorting() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void javaClassVariable() throws CoreException, IOException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void innerScopeVariableBeforeOuterScopeVariable() throws CoreException {
+ }
+
+ @Override
+ @Test
+ @Ignore
+ public void modifyVariableKeepingType() throws CoreException, IOException {
+ }
}
diff --git a/tests/org.eclipse.ease.testhelper/src/org/eclipse/ease/testhelper/AbstractDebugTest.java b/tests/org.eclipse.ease.testhelper/src/org/eclipse/ease/testhelper/AbstractDebugTest.java
index 349e998..fbb092d 100644
--- a/tests/org.eclipse.ease.testhelper/src/org/eclipse/ease/testhelper/AbstractDebugTest.java
+++ b/tests/org.eclipse.ease.testhelper/src/org/eclipse/ease/testhelper/AbstractDebugTest.java
@@ -51,7 +51,6 @@
import org.eclipse.ease.service.ScriptService;
import org.junit.After;
import org.junit.Before;
-import org.junit.Ignore;
import org.junit.Test;
import org.mockito.ArgumentCaptor;
@@ -122,13 +121,11 @@
}
}
- @Ignore
@Test
public void hasDebugTarget() throws CoreException {
assertNotNull(getDebugTarget());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void breakpointLocation() throws CoreException {
setBreakpoint(fFile, getLineNumber("primitive-integer-definition-hook"));
@@ -146,8 +143,7 @@
assertEquals(1, suspendedEvents);
}
- // ---------- step over tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- step over tests ---------------------------------------------------------------
public void stepOverTestTemplate(IDebugElementProvider elementProvider) throws CoreException {
setBreakpoint(fFile, getLineNumber("testMethod-call-hook"));
@@ -182,32 +178,27 @@
assertEquals(2, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepOverOnDebugTarget() throws CoreException {
stepOverTestTemplate(() -> getDebugTarget());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepOverOnProcess() throws CoreException {
stepOverTestTemplate(() -> getProcess());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepOverOnThread() throws CoreException {
stepOverTestTemplate(() -> getThread());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepOverOnStackFrame() throws CoreException {
stepOverTestTemplate(() -> getTopmostStackFrame());
}
- // ---------- step into tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- step into tests ---------------------------------------------------------------
public void stepIntoTestTemplate(IDebugElementProvider elementProvider) throws CoreException {
setBreakpoint(fFile, getLineNumber("testMethod-call-hook"));
@@ -242,32 +233,27 @@
assertEquals(2, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepIntoOnDebugTarget() throws CoreException {
stepIntoTestTemplate(() -> getDebugTarget());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepIntoOnProcess() throws CoreException {
stepIntoTestTemplate(() -> getProcess());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepIntoOnThread() throws CoreException {
stepIntoTestTemplate(() -> getThread());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepIntoOnStackFrame() throws CoreException {
stepIntoTestTemplate(() -> getTopmostStackFrame());
}
- // ---------- step return tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- step return tests -------------------------------------------------------------
public void stepReturnTestTemplate(IDebugElementProvider elementProvider) throws CoreException {
setBreakpoint(fFile, getLineNumber("testMethod-result-hook"));
@@ -302,32 +288,27 @@
assertEquals(2, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepReturnOnDebugTarget() throws CoreException {
stepReturnTestTemplate(() -> getDebugTarget());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepReturnOnProcess() throws CoreException {
stepReturnTestTemplate(() -> getProcess());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepReturnOnThread() throws CoreException {
stepReturnTestTemplate(() -> getThread());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void stepReturnOnStackFrame() throws CoreException {
stepReturnTestTemplate(() -> getTopmostStackFrame());
}
- // ---------- resume tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- resume tests ------------------------------------------------------------------
public void resumeTestTemplate(IDebugElementProvider elementProvider) throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -341,32 +322,27 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void resumeOnDebugTarget() throws CoreException, IOException {
resumeTestTemplate(() -> getDebugTarget());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void resumeOnProcess() throws CoreException, IOException {
resumeTestTemplate(() -> getProcess());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void resumeOnThread() throws CoreException, IOException {
resumeTestTemplate(() -> getThread());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void resumeOnStackFrame() throws CoreException, IOException {
resumeTestTemplate(() -> getTopmostStackFrame());
}
- // ---------- terminate tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- terminate tests ---------------------------------------------------------------
public void terminateTestTemplate(IDebugElementProvider elementProvider) throws CoreException {
setBreakpoint(fFile, 1);
@@ -386,32 +362,27 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void terminateDebugTargetInSuspendedState() throws CoreException {
terminateTestTemplate(() -> getDebugTarget());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void terminateProcessInSuspendedState() throws CoreException {
terminateTestTemplate(() -> getProcess());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void terminateThreadInSuspendedState() throws CoreException {
terminateTestTemplate(() -> getThread());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void terminateStackFrameInSuspendedState() throws CoreException {
terminateTestTemplate(() -> getTopmostStackFrame());
}
- // ---------- disconnect tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- disconnect tests --------------------------------------------------------------
public void disconnectTestTemplate(IDebugElementProvider elementProvider) throws CoreException {
setBreakpoint(fFile, 1);
@@ -431,34 +402,28 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void disconnectDebugTargetInSuspendedState() throws CoreException {
disconnectTestTemplate(() -> getDebugTarget());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void disconnectProcessInSuspendedState() throws CoreException {
disconnectTestTemplate(() -> getProcess());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void disconnectThreadInSuspendedState() throws CoreException {
disconnectTestTemplate(() -> getThread());
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void disconnectStackFrameInSuspendedState() throws CoreException {
disconnectTestTemplate(() -> getTopmostStackFrame());
}
- // ---------- watch expression tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- watch expression tests --------------------------------------------------------
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void evaluateWatchExpression() throws CoreException, IOException {
final IWatchExpressionListener expressionListener = mock(IWatchExpressionListener.class);
@@ -489,10 +454,8 @@
assertEquals(0, variable.getValue().getVariables().length);
}
- // ---------- state enablements tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- state enablements tests -------------------------------------------------------
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void suspendedState() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -562,7 +525,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void terminatedState() throws CoreException {
@@ -618,10 +580,8 @@
assertFalse(getThread().canTerminate());
}
- // ---------- variable tests
- // ----------------------------------------------------------------------------------------------------
+ // ---------- variable tests ----------------------------------------------------------------
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void primitiveDoubleVariable() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -650,7 +610,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void primitiveStringVariable() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -679,7 +638,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void nullVariable() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -708,7 +666,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void nativeArrayVariable() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -757,7 +714,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void arrayVariableSorting() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -787,7 +743,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void nativeObjectVariable() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -828,7 +783,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void javaClassVariable() throws CoreException, IOException {
setBreakpoint(fFile, getLastLineNumber());
@@ -898,7 +852,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test(timeout = TEST_TIMEOUT)
public void innerScopeVariableBeforeOuterScopeVariable() throws CoreException {
setBreakpoint(fFile, getLineNumber("testMethod-result-hook"));
@@ -923,7 +876,6 @@
assertEquals(1, suspendedEvents);
}
- @Ignore
@Test
public void modifyVariableKeepingType() throws CoreException, IOException {
setBreakpoint(fFile, getLineNumber("testMethod-call-hook"));
@@ -969,8 +921,7 @@
assertEquals(2, suspendedEvents);
}
- // ---------- helper methods
- // ----------------------------------------------------------------------------------------------------
+ // ---------- helper methods ----------------------------------------------------------------
private EaseDebugVariable[] getVariables() {
final EaseDebugStackFrame stackFrame = getTopmostStackFrame();