Bug 527738: Fix test_setUrl_remote_with_post test.
Use ProgressListener to determine when POST request has completed.
Change-Id: I6c2d0cfaffb22a69f93a681451b54fc1b1ee4f2e
Signed-off-by: Roland Grunberg <rgrunber@redhat.com>
diff --git a/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_browser_Browser.java b/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_browser_Browser.java
index eee4c62..5b90ad4 100644
--- a/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_browser_Browser.java
+++ b/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_browser_Browser.java
@@ -896,7 +896,6 @@
assumeTrue("Skipping test due to bad internet connection", checkInternet(url));
testLog.append("checkInternet() passed");
- String expectedTitle = "Bug List";
Runnable browserSetFunc = () -> {
testLog.append("Setting Browser url to:" + url);
boolean opSuccess = browser.setUrl(
@@ -904,8 +903,19 @@
null);
assertTrue("Expecting setUrl() to return true", opSuccess);
};
- validateTitleChanged(expectedTitle, browserSetFunc);
- // Even a successfull empty query returns about 10000 chars of HTML
+
+ final AtomicReference<Boolean> completed = new AtomicReference<>(new Boolean(false));
+ browser.addProgressListener(completedAdapter(event -> {
+ testLog.append("ProgressListener fired");
+ completed.set(true);
+ }));
+ browserSetFunc.run();
+ shell.open();
+
+ boolean hasFinished = waitForPassCondition(() -> completed.get().booleanValue());
+ assertTrue("Test timed out. ProgressListener not fired " + testLog.toString(), hasFinished);
+
+ // Even a successful empty query returns about 10000 chars of HTML
int numChars = browser.getText().length();
assertTrue("Response data contained " + numChars + " chars.", numChars > 10000);
}