Skip to main content
aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorLeo Ufimtsev2017-05-24 19:10:22 +0000
committerAlexander Kurtakov2017-06-28 08:15:08 +0000
commit2cc5d79e31d0f238b27ff78360cbac4007e4c7cd (patch)
tree299f00f36f0959d306eb2fa7f91b2004e592a870 /tests
parent06786007f0c8cde96552f8f669f7722c89f3ec8a (diff)
downloadeclipse.platform.swt-2cc5d79e31d0f238b27ff78360cbac4007e4c7cd.tar.gz
eclipse.platform.swt-2cc5d79e31d0f238b27ff78360cbac4007e4c7cd.tar.xz
eclipse.platform.swt-2cc5d79e31d0f238b27ff78360cbac4007e4c7cd.zip
Bug 514719: [Browser][Webkit2] port Browser.getText() to webkit2
jUnit tests for getText() Patchset 3: - Added additional test cases to address corner cases. Patchset 4: - Cleanup. Change-Id: I93d20732693a2a69661c6059de3278206c1c2456 Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=514719 Signed-off-by: Leo Ufimtsev <lufimtse@redhat.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_browser_Browser.java53
1 files changed, 53 insertions, 0 deletions
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 4e3ee3c55a..37e5601937 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
@@ -849,6 +849,59 @@ public void test_setUrl() {
// TODO - it would be good to verify that the page actually loaded. ex download the webpage etc..
}
+@Test
+public void test_getText() {
+ getText_helper("helloWorld");
+}
+
+@Test
+public void test_getText_html() {
+ getText_helper("<html><head></head><body>hello<b>World</b></body></html>");
+}
+
+/** Ensure we get webpage before javascript processed it.
+ * E.g js would add 'style' tag to body after processing. */
+@Test
+public void test_getText_script() {
+ getText_helper("<html><head></head><body>hello World<script>document.body.style.backgroundColor = \"red\";</script></body></html>");
+}
+
+/** Ensure that 'DOCTYPE' is not stripped out of original string */
+@Test
+public void test_getText_doctype() {
+ getText_helper("<!DOCTYPE html><html><head></head><body>hello World</body></html>");
+}
+
+/** Ensure custom DOCTYPE is not stripped out of original string */
+@Test
+public void test_getText_doctype_custom() {
+ getText_helper("<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" "
+ + "\"http://www.w3.org/TR/html4/strict.dtd\"><html><head></head><body>hello World</body></html>");
+}
+
+private void getText_helper(String testString) {
+ AtomicReference<String> returnString= new AtomicReference<>("");
+ AtomicBoolean finished = new AtomicBoolean(false);
+ browser.setText(testString);
+ browser.addProgressListener(new ProgressAdapter() {
+ @Override
+ public void completed(ProgressEvent event) {
+ returnString.set(browser.getText());
+ if (debug_verbose_output)
+ System.out.println(returnString.get());
+ finished.set(true);
+ }
+ });
+ shell.open();
+ waitForPassCondition(() -> finished.get());
+ boolean passed = returnString.get().equals(testString);
+ String error_msg = finished.get() ?
+ "Test did not return correct string.\n"
+ + "Expected:"+testString+"\n"
+ + "Actual:"+returnString.get()
+ : "Test timed out";
+ assertTrue(error_msg, passed);
+}
/**
* Test that a page load an be stopped (stop()) without throwing an exception.

Back to the top