Bug 537322 - Added waiting for jobs in test to prevent log errors
The tests in test case TestToggleBreakpointsTarget8 will do some
breakpoint operations, make assertions and then clean-up. The breakpoint
operations trigger jobs, which coincide with the clean-up of the test.
This change adds waiting before the clean-up, to avoid the error log
entries. This helps keeping the build log clean, helping to identify
actual problems more easily.
Change-Id: I497b69d2c5b8d20d0b22e8ff48760a8e6b5991a9
Signed-off-by: Simeon Andreev <simeon.danailov.andreev@gmail.com>
diff --git a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget.java b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget.java
index 40f2330..5de8719 100644
--- a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget.java
+++ b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget.java
@@ -40,12 +40,12 @@
try {
Path path = new Path("testfiles/source/SomeClass.java");
toggleBreakpoint(path, 22); // 0 based offset in document line numbers
+ TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
IBreakpoint added = listener.getAdded();
assertTrue("Should be a line breakpoint", added instanceof IJavaLineBreakpoint);
IJavaLineBreakpoint breakpoint = (IJavaLineBreakpoint) added;
assertEquals("Wrong line number", 23, breakpoint.getLineNumber());
assertEquals("Wrong type name", "a.b.c.SomeClass", breakpoint.getTypeName());
- TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
} finally {
manager.removeBreakpointListener(listener);
removeAllBreakpoints();
@@ -65,12 +65,12 @@
try {
Path path = new Path("testfiles/source/SomeClass.java");
toggleBreakpoint(path, 19); // 0 based offset in document line numbers
+ TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
IBreakpoint added = listener.getAdded();
assertTrue("Should be a watchpoint", added instanceof IJavaWatchpoint);
IJavaWatchpoint breakpoint = (IJavaWatchpoint) added;
assertEquals("Wrong type name", "a.b.c.SomeClass", breakpoint.getTypeName());
assertEquals("Wrong field name", "someField", breakpoint.getFieldName());
- TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
} finally {
manager.removeBreakpointListener(listener);
removeAllBreakpoints();
@@ -90,6 +90,7 @@
try {
Path path = new Path("testfiles/source/SomeClass.java");
toggleBreakpoint(path, 21); // 0 based offset in document line numbers
+ TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
IBreakpoint added = listener.getAdded();
assertTrue("Should be a method breakpoint", added instanceof IJavaMethodBreakpoint);
IJavaMethodBreakpoint breakpoint = (IJavaMethodBreakpoint) added;
@@ -98,7 +99,6 @@
// this will actually fail to suspend since 'SomeClass' is not qualified, but we can't resolve the type
// without a build path, etc. (not a regression)
assertEquals("Wrong signature", "(Ljava/lang/String;LSomeClass;)V", breakpoint.getMethodSignature());
- TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
} finally {
manager.removeBreakpointListener(listener);
removeAllBreakpoints();
diff --git a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget8.java b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget8.java
index d864bac..7f65f38 100644
--- a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget8.java
+++ b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/breakpoints/TestToggleBreakpointsTarget8.java
@@ -15,6 +15,7 @@
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.jdt.debug.core.IJavaLineBreakpoint;
import org.eclipse.jdt.debug.core.IJavaMethodBreakpoint;
+import org.eclipse.jdt.debug.tests.TestUtil;
/**
* Tests the Java debugger's 'toggle breakpoints target'.
@@ -42,6 +43,7 @@
try {
Path path = new Path("java8/EvalTestIntf18.java");
toggleBreakpoint(path, 20); // 0 based offset in document line numbers
+ TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
IBreakpoint added = listener.getAdded();
assertTrue("Should be a method breakpoint", added instanceof IJavaMethodBreakpoint);
IJavaMethodBreakpoint breakpoint = (IJavaMethodBreakpoint) added;
@@ -67,6 +69,7 @@
try {
Path path = new Path("java8/EvalTestIntf18.java");
toggleBreakpoint(path, 25); // 0 based offset in document line numbers
+ TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
IBreakpoint added = listener.getAdded();
assertTrue("Should be a method breakpoint", added instanceof IJavaMethodBreakpoint);
IJavaMethodBreakpoint breakpoint = (IJavaMethodBreakpoint) added;
@@ -93,6 +96,7 @@
try {
Path path = new Path("java8/EvalTestIntf18.java");
toggleBreakpoint(path, 19); // 0 based offset in document line numbers
+ TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
assertTrue(listener.isEmpty());
} finally {
manager.removeBreakpointListener(listener);
@@ -113,6 +117,7 @@
try {
Path path = new Path("java8/EvalTestIntf18.java");
toggleBreakpoint(path, 21); // 0 based offset in document line numbers
+ TestUtil.waitForJobs(getName(), 100, DEFAULT_TIMEOUT);
IBreakpoint added = listener.getAdded();
assertTrue("Should be a line breakpoint", added instanceof IJavaLineBreakpoint);
IJavaLineBreakpoint breakpoint = (IJavaLineBreakpoint) added;