On Oct 10, 2008, at 11:53 AM, jvdrean (SVN) wrote:
Author: jvdrean
Date: 2008-10-10 11:53:57 +0200 (Fri, 10 Oct 2008)
New Revision: 13481
Added:
enterprise/trunk/distribution-test/wysiwyg-tests/
enterprise/trunk/distribution-test/wysiwyg-tests/pom.xml
enterprise/trunk/distribution-test/wysiwyg-tests/src/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/xpn/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
xpn/xwiki/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
xpn/xwiki/it/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
xpn/xwiki/it/selenium/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
xpn/xwiki/it/selenium/AllTests.java
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
xpn/xwiki/it/selenium/StandardFeaturesTest.java
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
xpn/xwiki/it/selenium/framework/
enterprise/trunk/distribution-test/wysiwyg-tests/src/test/it/com/
xpn/xwiki/it/selenium/framework/AbstractWysiwygTestCase.java
Log:
XE-319 : Write an integration tests framework for the new wysiwyg
editor
Initial version, the XHTML assertions must be reviewed since some
behaviors looks weird.
[snip]
+ public void testTypingAndDeletion()
+ {
+ typeText("foobar");
+ assertXHTML("foobar<br>");
This is not correct. There should be no br.
+ typeBackspaces("foobar".length());
+ assertXHTML(WYSIWYG_DEFAULT_CONTENT);
Maybe an assertEmptyXHTML() would be better?
+ public void testParagraphs()
+ {
+ typeTextThenEnter("a");
+ typeTextThenEnter("b");
+ typeText("c");
+
assertXHTML("<p>a</p><p>b</p><p>c<br></p>");
The br is wrong.
+ public void testBold()
+ {
+ typeTextThenEnter("foobar");
+ selectElement("p", 1);
What does this mean? Select the first <p> element in the DOM?
Couldn't we have instead: selectText("foobar")? It would seems easier
to write and easier to understand.
+ clickBoldButton();
+
assertXHTML("<p><strong>foobar</strong></p><p><strong></
strong><br></p>");
The second paragraph shouldn't be there.
+ public void testItalics()
+ {
+ typeTextThenEnter("foobar");
+ selectElement("p", 1);
+ clickItalicsButton();
+
assertXHTML("<p><em>foobar</em></p><p><em></em><br></p>");
Same
+ }
+
+ public void testUnderline()
+ {
+ typeTextThenEnter("foobar");
+ selectElement("p", 1);
+ clickUnderlineButton();
+
assertXHTML("<p><ins>foobar</ins></p><p><ins></ins><br></
p>");
same
+ }
+
+ public void testStrikethrough()
+ {
+ typeTextThenEnter("foobar");
+ selectElement("p", 1);
+ clickStrikethroughButton();
+
assertXHTML("<p><del>foobar</del></p><p><del></del><br></
p>");
same
+ }
+
+ public void testSubscript()
+ {
+ typeTextThenEnter("foobar");
+ selectElement("p", 1);
+ clickSubscriptButton();
+
assertXHTML("<p><sub>foobar</sub></p><p><br></p>");
same
+ }
+
+ public void testSuperscript()
+ {
+ typeTextThenEnter("foobar");
+ selectElement("p", 1);
+ clickSuperscriptButton();
+
assertXHTML("<p><sup>foobar</sup></p><p><br></p>");
same
+ }
+
+ public void testUnorderedList()
+ {
+ // Create a list with 3 items
+ typeTextThenEnter("a");
+ typeTextThenEnter("b");
+ typeText("c");
+ selectAllContent();
+ clickUnorderedListButton();
+
assertXHTML("<ul><li>a</li><li>b</li><li>c<br></li></ul>");
+
+ // Undo
+ clickUnorderedListButton();
+
assertXHTML("<p>a</p><p>b</p><p>c<br></p>");
br shouldn't be there
+
+ // Create a list with 1 item and delete it
+ resetContent();
clearContent()?
+ typeText("a");
+ selectAllContent();
+ clickUnorderedListButton();
+ typeBackspaces(2);
+ assertXHTML("<br>");
should be empty.
+
+ // Create a list with 1 item and delete the bullet
+ resetContent();
+ typeText("a");
+ selectAllContent();
+ clickUnorderedListButton();
+ typeLeftArrow();
+ typeBackspace();
+ assertXHTML("a");
[snip] (other tests also need to be fixed)
+
+ public static final String WYSIWYG_DEFAULT_CONTENT = "<br>";
This is not correct. It should be empty.
Thanks
-Vincent