summaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorSteve Northover <steve>2008-07-03 17:00:16 +0000
committerSteve Northover <steve>2008-07-03 17:00:16 +0000
commitd2c1767eb08a28bfa31c8e2d549b4275c725bd40 (patch)
tree2c3bfc8e62fee10c4dd1a7904b0de12610269ff2 /tests
parent91999dea023f538a28afe60645e6dff08a1085a9 (diff)
downloadeclipse.platform.swt-d2c1767eb08a28bfa31c8e2d549b4275c725bd40.tar.gz
eclipse.platform.swt-d2c1767eb08a28bfa31c8e2d549b4275c725bd40.tar.xz
eclipse.platform.swt-d2c1767eb08a28bfa31c8e2d549b4275c725bd40.zip
239220 - Text.getText() returns empty string after calling setText() with non-empty string
Diffstat (limited to 'tests')
-rw-r--r--tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_widgets_Text.java144
1 files changed, 142 insertions, 2 deletions
diff --git a/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_widgets_Text.java b/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_widgets_Text.java
index a96930da3f..75851e3513 100644
--- a/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_widgets_Text.java
+++ b/tests/org.eclipse.swt.tests/JUnit Tests/org/eclipse/swt/tests/junit/Test_org_eclipse_swt_widgets_Text.java
@@ -588,6 +588,22 @@ public void test_getText() {
String string = "012345" + delimiterString + "67890";
text.setText(string);
assertEquals(string, text.getText());
+
+ // tests a SINGLE line text editor
+ makeCleanEnvironment(true);
+ assertEquals("", text.getText());
+ text.setText("01234567890");
+ assertEquals("01234567890", text.getText());
+ text.setText("");
+ assertEquals("", text.getText());
+
+ // tests a SINGLE line text editor with border
+ makeCleanEnvironment(true, true);
+ assertEquals("", text.getText());
+ text.setText("01234567890");
+ assertEquals("01234567890", text.getText());
+ text.setText("");
+ assertEquals("", text.getText());
}
public void test_getTextII() {
@@ -647,6 +663,124 @@ public void test_getTextII() {
assertEquals("34567890", text.getText(3, 100));
assertEquals("", text.getText(5, 3));
assertEquals("0", text.getText(10,20));
+
+ // tests a SINGLE line text editor
+ makeCleanEnvironment(true);
+ assertEquals("", text.getText());
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("", text.getText(-1,0));
+ assertEquals("", text.getText(0,0));
+ assertEquals("", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("a");
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("a", text.getText(-1,0));
+ assertEquals("a", text.getText(0,0));
+ assertEquals("a", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("01234567890");
+ assertEquals("345", text.getText(3, 5));
+ assertEquals("012", text.getText(-1, 2));
+ assertEquals("34567890", text.getText(3, 100));
+ assertEquals("", text.getText(5, 3));
+ assertEquals("0", text.getText(10,20));
+
+ text.setText("");
+ text.setEchoChar('*');
+
+ assertEquals("", text.getText());
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("", text.getText(-1,0));
+ assertEquals("", text.getText(0,0));
+ assertEquals("", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("a");
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("a", text.getText(-1,0));
+ assertEquals("a", text.getText(0,0));
+ assertEquals("a", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("01234567890");
+ assertEquals("345", text.getText(3, 5));
+ assertEquals("012", text.getText(-1, 2));
+ assertEquals("34567890", text.getText(3, 100));
+ assertEquals("", text.getText(5, 3));
+ assertEquals("0", text.getText(10,20));
+
+ // tests a SINGLE line text editor
+ makeCleanEnvironment(true, true);
+ assertEquals("", text.getText());
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("", text.getText(-1,0));
+ assertEquals("", text.getText(0,0));
+ assertEquals("", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("a");
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("a", text.getText(-1,0));
+ assertEquals("a", text.getText(0,0));
+ assertEquals("a", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("01234567890");
+ assertEquals("345", text.getText(3, 5));
+ assertEquals("012", text.getText(-1, 2));
+ assertEquals("34567890", text.getText(3, 100));
+ assertEquals("", text.getText(5, 3));
+ assertEquals("0", text.getText(10,20));
+
+ text.setText("");
+ text.setEchoChar('*');
+
+ assertEquals("", text.getText());
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("", text.getText(-1,0));
+ assertEquals("", text.getText(0,0));
+ assertEquals("", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("a");
+ assertEquals("", text.getText(-4,-4));
+ assertEquals("", text.getText(-4,-2));
+ assertEquals("", text.getText(-2,-1));
+ assertEquals("", text.getText(-1,-1));
+ assertEquals("a", text.getText(-1,0));
+ assertEquals("a", text.getText(0,0));
+ assertEquals("a", text.getText(0,1));
+ assertEquals("", text.getText(10,20));
+
+ text.setText("01234567890");
+ assertEquals("345", text.getText(3, 5));
+ assertEquals("012", text.getText(-1, 2));
+ assertEquals("34567890", text.getText(3, 100));
+ assertEquals("", text.getText(5, 3));
+ assertEquals("0", text.getText(10,20));
}
public void test_getTextLimit() {
@@ -1327,17 +1461,23 @@ String delimiterString;
*
* @param single true if the new text widget should be single-line.
*/
+
private void makeCleanEnvironment(boolean single) {
+ makeCleanEnvironment (single, false);
+}
+
+private void makeCleanEnvironment(boolean single, boolean border) {
// this method must be private or protected so the auto-gen tool keeps it
if ( text != null ) text.dispose();
if ( single == true )
- text = new Text(shell, SWT.SINGLE);
+ text = new Text(shell, SWT.SINGLE | (border ? SWT.BORDER : SWT.NULL));
else
- text = new Text(shell, SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
+ text = new Text(shell, SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | (border ? SWT.BORDER : SWT.NULL));
setWidget(text);
delimiterString = Text.DELIMITER;
}
+
protected void setWidget(Widget w) {
text = (Text)w;
super.setWidget(w);