01: package watij.elements;
02:
03: import watij.WatijTestCase;
04: import static watij.finders.SymbolFactory.id;
05: import static watij.finders.SymbolFactory.name;
06:
07: public class TextareaFieldsTest extends WatijTestCase {
08:
09: protected void setUp() throws Exception {
10: super .setUp();
11: ie.goTo(HTML_ROOT + "textArea.html");
12: }
13:
14: public void testTextareaFieldExists() throws Exception {
15: // #test for existance of 4 text area
16: assertTrue(ie.textField(name, "txtMultiLine1").exists());
17: assertTrue(ie.textField(name, "txtMultiLine2").exists());
18: assertTrue(ie.textField(name, "txtMultiLine3").exists());
19: assertTrue(ie.textField(name, "txtReadOnly").exists());
20:
21: assertTrue(ie.textField(id, "txtMultiLine1").exists());
22: assertTrue(ie.textField(id, "txtMultiLine2").exists());
23: assertTrue(ie.textField(id, "txtMultiLine3").exists());
24: assertTrue(ie.textField(id, "txtReadOnly").exists());
25: // #test for missing
26: assertFalse(ie.textField(name, "missing").exists());
27: assertFalse(ie.textField(name, "txtMultiLine4").exists());
28: }
29:
30: public void testTextareaToString() throws Exception {
31: //# from a bug reported by Zeljko Filipin
32: // assertTrue_nothing_raised() { ie.textField(id,"txtMultiLine3").to_s }
33: }
34:
35: public void testTextareaField() throws Exception {
36: //# test for read only method
37: assertFalse(ie.textField(name, "txtMultiLine1").readOnly());
38: assertTrue(ie.textField(name, "txtReadOnly").readOnly());
39: //# test for enabled() method
40: assertFalse(ie.textField(name, "txtDisabled").enabled());
41: assertTrue(ie.textField(id, "txtMultiLine1").enabled());
42:
43: TextField t1 = ie.textField(name, "txtMultiLine1");
44: assertTrue(t1.verifyContains("Hello World"));
45: assertTrue(t1.verifyContains("/el/"));
46: TextField t2 = ie.textField(name, "txtMultiLine2");
47: assertTrue(t2.verifyContains("/IE/"));
48:
49: assertRaisesUnknownObjectExceptionForMethodVerifyContains(ie
50: .textField(name, "NoName"),
51: ("No field to get a value of"));
52: assertRaisesUnknownObjectExceptionForMethodVerifyContains(ie
53: .textField(id, "noID"), ("No field to get a value of"));
54: assertRaisesUnknownObjectExceptionForMethodVerifyContains(ie
55: .textField(name, "txtNone"),
56: ("No field to get a value of"));
57: assertRaisesUnknownObjectExceptionForMethodVerifyContains(ie
58: .textField(name, "NoName"), (" Some Text"));
59:
60: assertRaisesObjectReadOnlyExceptionForMethodAppend(ie
61: .textField(id, "txtReadOnly"), "Some Text");
62: assertRaisesObjectDisabledExceptionForMethodAppend(ie
63: .textField(name, "txtDisabled"), " Some Text");
64: assertRaisesUnknownObjectExceptionForMethodAppend(ie.textField(
65: name, "missing_field"), "Some Text");
66:
67: ie.textField(name, "txtMultiLine1").append(" Some Text");
68: assertEquals("Hello World Some Text", ie.textField(name,
69: "txtMultiLine1").getContents());
70:
71: assertRaisesObjectReadOnlyExceptionForMethodAppend(ie
72: .textField(id, "txtReadOnly"), "Some Text");
73: assertRaisesObjectDisabledExceptionForMethodAppend(ie
74: .textField(name, "txtDisabled"), " Some Text");
75: assertRaisesUnknownObjectExceptionForMethodAppend(ie.textField(
76: name, "missing_field"), "Some Text");
77:
78: ie.textField(name, "txtMultiLine1").set("watir IE Controller");
79: assertEquals("watir IE Controller", ie.textField(name,
80: "txtMultiLine1").getContents());
81:
82: assertRaisesObjectReadOnlyExceptionForMethodAppend(ie
83: .textField(id, "txtReadOnly"), "Some Text");
84: assertRaisesObjectDisabledExceptionForMethodAppend(ie
85: .textField(name, "txtDisabled"), " Some Text");
86: assertRaisesUnknownObjectExceptionForMethodAppend(ie.textField(
87: name, "missing_field"), "Some Text");
88:
89: ie.textField(name, "txtMultiLine2").clear();
90: assertEquals("", ie.textField(name, "txtMultiLine2")
91: .getContents());
92: }
93: }
|