Reviewed by me
authorkocienda <kocienda@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 20 Mar 2005 17:36:05 +0000 (17:36 +0000)
committerkocienda <kocienda@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sun, 20 Mar 2005 17:36:05 +0000 (17:36 +0000)
        Added tests to cover new "unsupported content" editing code.

        * layout-tests/editing/unsupported-content/list-delete-001-expected.txt: Added.
        * layout-tests/editing/unsupported-content/list-delete-001.html: Added.
        * layout-tests/editing/unsupported-content/list-delete-002-expected.txt: Added.
        * layout-tests/editing/unsupported-content/list-delete-002.html: Added.
        * layout-tests/editing/unsupported-content/list-delete-003-expected.txt: Added.
        * layout-tests/editing/unsupported-content/list-delete-003.html: Added.
        * layout-tests/editing/unsupported-content/list-type-after-expected.txt: Added.
        * layout-tests/editing/unsupported-content/list-type-after.html: Added.
        * layout-tests/editing/unsupported-content/list-type-before-expected.txt: Added.
        * layout-tests/editing/unsupported-content/list-type-before.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@8940 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/editing/unsupported-content/list-delete-001-expected.txt [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-delete-001.html [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-delete-002-expected.txt [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-delete-002.html [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-delete-003-expected.txt [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-delete-003.html [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-type-after-expected.txt [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-type-after.html [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-type-before-expected.txt [new file with mode: 0644]
LayoutTests/editing/unsupported-content/list-type-before.html [new file with mode: 0644]
WebCore/ChangeLog-2005-08-23

diff --git a/LayoutTests/editing/unsupported-content/list-delete-001-expected.txt b/LayoutTests/editing/unsupported-content/list-delete-001-expected.txt
new file mode 100644 (file)
index 0000000..39ed471
--- /dev/null
@@ -0,0 +1,46 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x250 [border: (4px solid #0000FF)]
+        RenderBlock {DIV} at (20,20) size 744x72
+          RenderText {TEXT} at (0,0) size 67x22
+            text run at (0,0) width 67: "Tests: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 663x22
+            text run at (0,28) width 663: "Our ability to \"edit around\" content the HTML editing code does not yet handle very well. "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,50) size 99x22
+              text run at (0,50) width 99: "For this test: "
+          RenderText {TEXT} at (99,50) size 168x22
+            text run at (99,50) width 168: "Select and delete a list."
+        RenderBlock (anonymous) at (20,92) size 744x22
+          RenderBR {BR} at (0,0) size 0x22
+        RenderBlock {DIV} at (20,114) size 744x116
+          RenderText {TEXT} at (0,0) size 189x22
+            text run at (0,0) width 189: "Expected Results: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 709x44
+            text run at (0,28) width 709: "The content in the red box must exactly match the content in the green box (except for the border"
+            text run at (0,50) width 53: "color). "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,72) size 99x22
+              text run at (0,72) width 99: "For this test: "
+          RenderText {TEXT} at (99,72) size 708x44
+            text run at (99,72) width 609: "Only list content should get deleted. Surrounding content that is not selected should"
+            text run at (0,94) width 201: "(obviously) not be affected."
+      RenderBlock {DIV} at (0,260) size 784x32 [border: (2px solid #008000)]
+        RenderText {TEXT} at (2,2) size 62x28
+          text run at (2,2) width 62: "before"
+      RenderBlock {DIV} at (0,302) size 784x32
+        RenderBlock {DIV} at (0,0) size 784x32 [border: (2px solid #FF0000)]
+          RenderText {TEXT} at (2,2) size 62x28
+            text run at (2,2) width 62: "before"
+          RenderBR {BR} at (0,0) size 0x0
+selection is CARET:
+start:      position 7 of child 1 {TEXT} of child 1 {DIV} of root {DIV}
+upstream:   position 7 of child 1 {TEXT} of child 1 {DIV} of root {DIV}
+downstream: position 0 of child 2 {BR} of child 1 {DIV} of root {DIV}
diff --git a/LayoutTests/editing/unsupported-content/list-delete-001.html b/LayoutTests/editing/unsupported-content/list-delete-001.html
new file mode 100644 (file)
index 0000000..64b4254
--- /dev/null
@@ -0,0 +1,73 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    font-size: 24px; 
+}
+.explanation { 
+    border: 4px solid blue; 
+    padding: 16px; 
+    font-size: 18px; 
+    margin-bottom: 10px;
+}
+.scenario:first-line { font-weight: bold; font-size: 24px; }
+.expected:first-line { font-weight: bold; font-size: 24px; }
+.results { margin-bottom: 10px; border: 2px solid green; font-size: 24px; }
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    moveSelectionForwardByLineCommand();
+    for (i = 0; i < 4; i++)
+        extendSelectionForwardByLineCommand();
+    deleteCommand();
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+
+<div class="explanation">
+<div class="scenario">
+Tests: 
+<br>
+Our ability to "edit around" content the HTML editing code does not yet handle very well.
+<br><i>For this test: </i>Select and delete a list.
+</div>
+<br>
+<div class="expected">
+Expected Results:
+<br>
+The content in the red box must exactly match the content in the green box (except for the border color).
+<br><i>For this test: </i>Only list content should get deleted.
+Surrounding content that is not selected should (obviously) not be affected.
+</div>
+</div>
+
+<div class="results">
+before
+</div>
+
+<div contenteditable id="root" style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space;">
+<div id="test" class="editing">
+before<ul>
+<li>line one</li>
+<li>line two</li>
+<li>line three</li>
+</ul>
+after
+</div>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/unsupported-content/list-delete-002-expected.txt b/LayoutTests/editing/unsupported-content/list-delete-002-expected.txt
new file mode 100644 (file)
index 0000000..e9a3505
--- /dev/null
@@ -0,0 +1,47 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x250 [border: (4px solid #0000FF)]
+        RenderBlock {DIV} at (20,20) size 744x72
+          RenderText {TEXT} at (0,0) size 67x22
+            text run at (0,0) width 67: "Tests: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 663x22
+            text run at (0,28) width 663: "Our ability to \"edit around\" content the HTML editing code does not yet handle very well. "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,50) size 99x22
+              text run at (0,50) width 99: "For this test: "
+          RenderText {TEXT} at (99,50) size 392x22
+            text run at (99,50) width 392: "Select and delete a list and some surrounding content."
+        RenderBlock (anonymous) at (20,92) size 744x22
+          RenderBR {BR} at (0,0) size 0x22
+        RenderBlock {DIV} at (20,114) size 744x116
+          RenderText {TEXT} at (0,0) size 189x22
+            text run at (0,0) width 189: "Expected Results: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 709x44
+            text run at (0,28) width 709: "The content in the red box must exactly match the content in the green box (except for the border"
+            text run at (0,50) width 53: "color). "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,72) size 99x22
+              text run at (0,72) width 99: "For this test: "
+          RenderText {TEXT} at (99,72) size 744x44
+            text run at (99,72) width 304: "Only selected content should get deleted. "
+            text run at (403,72) width 341: "Surrounding content that is not selected should"
+            text run at (0,94) width 201: "(obviously) not be affected."
+      RenderBlock {DIV} at (0,260) size 784x32 [border: (2px solid #008000)]
+        RenderText {TEXT} at (2,2) size 113x28
+          text run at (2,2) width 113: "before after"
+      RenderBlock {DIV} at (0,302) size 784x32
+        RenderBlock {DIV} at (0,0) size 784x32 [border: (2px solid #FF0000)]
+          RenderText {TEXT} at (2,2) size 68x28
+            text run at (2,2) width 68: "before "
+          RenderBR {BR} at (0,0) size 0x0
+selection is CARET:
+start:      position 8 of child 1 {TEXT} of child 1 {DIV} of root {DIV}
+upstream:   position 8 of child 1 {TEXT} of child 1 {DIV} of root {DIV}
+downstream: position 0 of child 2 {BR} of child 1 {DIV} of root {DIV}
diff --git a/LayoutTests/editing/unsupported-content/list-delete-002.html b/LayoutTests/editing/unsupported-content/list-delete-002.html
new file mode 100644 (file)
index 0000000..b12a38b
--- /dev/null
@@ -0,0 +1,74 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    font-size: 24px; 
+}
+.explanation { 
+    border: 4px solid blue; 
+    padding: 16px; 
+    font-size: 18px; 
+    margin-bottom: 10px;
+}
+.scenario:first-line { font-weight: bold; font-size: 24px; }
+.expected:first-line { font-weight: bold; font-size: 24px; }
+.results { margin-bottom: 10px; border: 2px solid green; font-size: 24px; }
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    moveSelectionForwardByLineCommand();
+    for (i = 0; i < 4; i++)
+        extendSelectionForwardByLineCommand();
+    deleteCommand();
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+
+<div class="explanation">
+<div class="scenario">
+Tests: 
+<br>
+Our ability to "edit around" content the HTML editing code does not yet handle very well.
+<br><i>For this test: </i>Select and delete a list and some surrounding content.
+</div>
+<br>
+<div class="expected">
+Expected Results:
+<br>
+The content in the red box must exactly match the content in the green box (except for the border color).
+<br><i>For this test: </i>Only selected content should get deleted. 
+Surrounding content that is not selected should (obviously) not be affected.
+</div>
+</div>
+
+<div class="results">
+before after
+</div>
+
+<div contenteditable id="root" style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space;">
+<div id="test" class="editing">
+before
+<ul>
+<li>line one</li>
+<li>line two</li>
+<li>line three</li>
+</ul>
+after
+</div>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/unsupported-content/list-delete-003-expected.txt b/LayoutTests/editing/unsupported-content/list-delete-003-expected.txt
new file mode 100644 (file)
index 0000000..1218b58
--- /dev/null
@@ -0,0 +1,46 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x250 [border: (4px solid #0000FF)]
+        RenderBlock {DIV} at (20,20) size 744x72
+          RenderText {TEXT} at (0,0) size 67x22
+            text run at (0,0) width 67: "Tests: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 663x22
+            text run at (0,28) width 663: "Our ability to \"edit around\" content the HTML editing code does not yet handle very well. "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,50) size 99x22
+              text run at (0,50) width 99: "For this test: "
+          RenderText {TEXT} at (99,50) size 392x22
+            text run at (99,50) width 392: "Select and delete a list and some surrounding content."
+        RenderBlock (anonymous) at (20,92) size 744x22
+          RenderBR {BR} at (0,0) size 0x22
+        RenderBlock {DIV} at (20,114) size 744x116
+          RenderText {TEXT} at (0,0) size 189x22
+            text run at (0,0) width 189: "Expected Results: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 709x44
+            text run at (0,28) width 709: "The content in the red box must exactly match the content in the green box (except for the border"
+            text run at (0,50) width 53: "color). "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,72) size 99x22
+              text run at (0,72) width 99: "For this test: "
+          RenderText {TEXT} at (99,72) size 744x44
+            text run at (99,72) width 304: "Only selected content should get deleted. "
+            text run at (403,72) width 341: "Surrounding content that is not selected should"
+            text run at (0,94) width 201: "(obviously) not be affected."
+      RenderBlock {DIV} at (0,260) size 784x32 [border: (2px solid #008000)]
+        RenderText {TEXT} at (2,2) size 45x28
+          text run at (2,2) width 45: "after"
+      RenderBlock {DIV} at (0,302) size 784x32
+        RenderBlock {DIV} at (0,0) size 784x32 [border: (2px solid #FF0000)]
+          RenderText {TEXT} at (2,2) size 45x28
+            text run at (2,2) width 45: "after"
+selection is CARET:
+start:      position 0 of child 1 {TEXT} of child 1 {DIV} of root {DIV}
+upstream:   position 0 of child 1 {DIV} of root {DIV}
+downstream: position 0 of child 1 {TEXT} of child 1 {DIV} of root {DIV}
diff --git a/LayoutTests/editing/unsupported-content/list-delete-003.html b/LayoutTests/editing/unsupported-content/list-delete-003.html
new file mode 100644 (file)
index 0000000..4edd914
--- /dev/null
@@ -0,0 +1,75 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    font-size: 24px; 
+}
+.explanation { 
+    border: 4px solid blue; 
+    padding: 16px; 
+    font-size: 18px; 
+    margin-bottom: 10px;
+}
+.scenario:first-line { font-weight: bold; font-size: 24px; }
+.expected:first-line { font-weight: bold; font-size: 24px; }
+.results { margin-bottom: 10px; border: 2px solid green; font-size: 24px; }
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    for (i = 0; i < 5; i++)
+        extendSelectionForwardByLineCommand();
+    for (i = 0; i < 5; i++)
+        extendSelectionBackwardByCharacterCommand();
+    deleteCommand();
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+
+<div class="explanation">
+<div class="scenario">
+Tests: 
+<br>
+Our ability to "edit around" content the HTML editing code does not yet handle very well.
+<br><i>For this test: </i>Select and delete a list and some surrounding content.
+</div>
+<br>
+<div class="expected">
+Expected Results:
+<br>
+The content in the red box must exactly match the content in the green box (except for the border color).
+<br><i>For this test: </i>Only selected content should get deleted. 
+Surrounding content that is not selected should (obviously) not be affected.
+</div>
+</div>
+
+<div class="results">
+after
+</div>
+
+<div contenteditable id="root" style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space;">
+<div id="test" class="editing">
+before
+<ul>
+<li>line one</li>
+<li>line two</li>
+<li>line three</li>
+</ul>
+after
+</div>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/unsupported-content/list-type-after-expected.txt b/LayoutTests/editing/unsupported-content/list-type-after-expected.txt
new file mode 100644 (file)
index 0000000..6cbbd71
--- /dev/null
@@ -0,0 +1,72 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x228 [border: (4px solid #0000FF)]
+        RenderBlock {DIV} at (20,20) size 744x72
+          RenderText {TEXT} at (0,0) size 67x22
+            text run at (0,0) width 67: "Tests: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 663x22
+            text run at (0,28) width 663: "Our ability to \"edit around\" content the HTML editing code does not yet handle very well. "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,50) size 99x22
+              text run at (0,50) width 99: "For this test: "
+          RenderText {TEXT} at (99,50) size 223x22
+            text run at (99,50) width 223: "Test typing at the end of a list."
+        RenderBlock (anonymous) at (20,92) size 744x22
+          RenderBR {BR} at (0,0) size 0x22
+        RenderBlock {DIV} at (20,114) size 744x94
+          RenderText {TEXT} at (0,0) size 189x22
+            text run at (0,0) width 189: "Expected Results: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 709x44
+            text run at (0,28) width 709: "The content in the red box must exactly match the content in the green box (except for the border"
+            text run at (0,50) width 53: "color). "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,72) size 99x22
+              text run at (0,72) width 99: "For this test: "
+          RenderText {TEXT} at (99,72) size 424x22
+            text run at (99,72) width 424: "Typed text should appear after (on the line below) the list."
+      RenderBlock {DIV} at (0,238) size 784x164 [border: (2px solid #008000)]
+        RenderBlock {UL} at (2,26) size 780x84
+          RenderListItem {LI} at (40,0) size 740x28
+            RenderListMarker at (0,0) size 0x22
+            RenderText {TEXT} at (0,0) size 78x28
+              text run at (0,0) width 78: "line one"
+          RenderListItem {LI} at (40,28) size 740x28
+            RenderListMarker at (0,0) size 0x22
+            RenderText {TEXT} at (0,0) size 79x28
+              text run at (0,0) width 79: "line two"
+          RenderListItem {LI} at (40,56) size 740x28
+            RenderListMarker at (0,0) size 0x22
+            RenderText {TEXT} at (0,0) size 92x28
+              text run at (0,0) width 92: "line three"
+        RenderBlock (anonymous) at (2,134) size 780x28
+          RenderText {TEXT} at (0,0) size 36x28
+            text run at (0,0) width 36: "xxx"
+      RenderBlock {DIV} at (0,412) size 784x164
+        RenderBlock {DIV} at (0,0) size 784x164 [border: (2px solid #FF0000)]
+          RenderBlock {UL} at (2,26) size 780x84
+            RenderListItem {LI} at (40,0) size 740x28
+              RenderListMarker at (0,0) size 0x22
+              RenderText {TEXT} at (0,0) size 78x28
+                text run at (0,0) width 78: "line one"
+            RenderListItem {LI} at (40,28) size 740x28
+              RenderListMarker at (0,0) size 0x22
+              RenderText {TEXT} at (0,0) size 79x28
+                text run at (0,0) width 79: "line two"
+            RenderListItem {LI} at (40,56) size 740x28
+              RenderListMarker at (0,0) size 0x22
+              RenderText {TEXT} at (0,0) size 92x28
+                text run at (0,0) width 92: "line three"
+          RenderBlock (anonymous) at (2,134) size 780x28
+            RenderText {TEXT} at (0,0) size 36x28
+              text run at (0,0) width 36: "xxx"
+selection is CARET:
+start:      position 3 of child 3 {TEXT} of child 1 {DIV} of root {DIV}
+upstream:   position 3 of child 3 {TEXT} of child 1 {DIV} of root {DIV}
+downstream: position 1 of child 4 {TEXT} of child 1 {DIV} of root {DIV}
diff --git a/LayoutTests/editing/unsupported-content/list-type-after.html b/LayoutTests/editing/unsupported-content/list-type-after.html
new file mode 100644 (file)
index 0000000..e4284e9
--- /dev/null
@@ -0,0 +1,76 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    font-size: 24px; 
+}
+.explanation { 
+    border: 4px solid blue; 
+    padding: 16px; 
+    font-size: 18px; 
+    margin-bottom: 10px;
+}
+.scenario:first-line { font-weight: bold; font-size: 24px; }
+.expected:first-line { font-weight: bold; font-size: 24px; }
+.results { margin-bottom: 10px; border: 2px solid green; font-size: 24px; }
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    for (i = 0; i < 3; i++)
+        moveSelectionForwardByLineCommand();
+    for (i = 0; i < 3; i++)
+        typeCharacterCommand("x");
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+
+<div class="explanation">
+<div class="scenario">
+Tests: 
+<br>
+Our ability to "edit around" content the HTML editing code does not yet handle very well.
+<br><i>For this test: </i>Test typing at the end of a list.
+</div>
+<br>
+<div class="expected">
+Expected Results:
+<br>
+The content in the red box must exactly match the content in the green box (except for the border color).
+<br><i>For this test: </i>Typed text should appear after (on the line below) the list.
+</div>
+</div>
+
+<div class="results">
+<ul>
+<li>line one</li>
+<li>line two</li>
+<li>line three</li>
+</ul>
+xxx
+</div>
+
+<div contenteditable id="root" style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space;">
+<div id="test" class="editing">
+<ul>
+<li>line one</li>
+<li>line two</li>
+<li>line three</li>
+</ul>
+</div>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
diff --git a/LayoutTests/editing/unsupported-content/list-type-before-expected.txt b/LayoutTests/editing/unsupported-content/list-type-before-expected.txt
new file mode 100644 (file)
index 0000000..814e4bc
--- /dev/null
@@ -0,0 +1,72 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x584
+      RenderBlock {DIV} at (0,0) size 784x228 [border: (4px solid #0000FF)]
+        RenderBlock {DIV} at (20,20) size 744x72
+          RenderText {TEXT} at (0,0) size 67x22
+            text run at (0,0) width 67: "Tests: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 663x22
+            text run at (0,28) width 663: "Our ability to \"edit around\" content the HTML editing code does not yet handle very well. "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,50) size 99x22
+              text run at (0,50) width 99: "For this test: "
+          RenderText {TEXT} at (99,50) size 228x22
+            text run at (99,50) width 228: "Test typing at the start of a list."
+        RenderBlock (anonymous) at (20,92) size 744x22
+          RenderBR {BR} at (0,0) size 0x22
+        RenderBlock {DIV} at (20,114) size 744x94
+          RenderText {TEXT} at (0,0) size 189x22
+            text run at (0,0) width 189: "Expected Results: "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderText {TEXT} at (0,28) size 709x44
+            text run at (0,28) width 709: "The content in the red box must exactly match the content in the green box (except for the border"
+            text run at (0,50) width 53: "color). "
+          RenderBR {BR} at (0,0) size 0x0
+          RenderInline {I} at (0,0) size 99x22
+            RenderText {TEXT} at (0,72) size 99x22
+              text run at (0,72) width 99: "For this test: "
+          RenderText {TEXT} at (99,72) size 436x22
+            text run at (99,72) width 436: "Typed text should appear before (on the line above) the list."
+      RenderBlock {DIV} at (0,238) size 784x164 [border: (2px solid #008000)]
+        RenderBlock (anonymous) at (2,2) size 780x28
+          RenderText {TEXT} at (0,0) size 36x28
+            text run at (0,0) width 36: "xxx"
+        RenderBlock {UL} at (2,54) size 780x84
+          RenderListItem {LI} at (40,0) size 740x28
+            RenderListMarker at (0,0) size 0x22
+            RenderText {TEXT} at (0,0) size 78x28
+              text run at (0,0) width 78: "line one"
+          RenderListItem {LI} at (40,28) size 740x28
+            RenderListMarker at (0,0) size 0x22
+            RenderText {TEXT} at (0,0) size 79x28
+              text run at (0,0) width 79: "line two"
+          RenderListItem {LI} at (40,56) size 740x28
+            RenderListMarker at (0,0) size 0x22
+            RenderText {TEXT} at (0,0) size 92x28
+              text run at (0,0) width 92: "line three"
+      RenderBlock {DIV} at (0,412) size 784x164
+        RenderBlock {DIV} at (0,0) size 784x164 [border: (2px solid #FF0000)]
+          RenderBlock (anonymous) at (2,2) size 780x28
+            RenderText {TEXT} at (0,0) size 36x28
+              text run at (0,0) width 36: "xxx"
+          RenderBlock {UL} at (2,54) size 780x84
+            RenderListItem {LI} at (40,0) size 740x28
+              RenderListMarker at (0,0) size 0x22
+              RenderText {TEXT} at (0,0) size 78x28
+                text run at (0,0) width 78: "line one"
+            RenderListItem {LI} at (40,28) size 740x28
+              RenderListMarker at (0,0) size 0x22
+              RenderText {TEXT} at (0,0) size 79x28
+                text run at (0,0) width 79: "line two"
+            RenderListItem {LI} at (40,56) size 740x28
+              RenderListMarker at (0,0) size 0x22
+              RenderText {TEXT} at (0,0) size 92x28
+                text run at (0,0) width 92: "line three"
+selection is CARET:
+start:      position 3 of child 2 {TEXT} of child 1 {DIV} of root {DIV}
+upstream:   position 3 of child 2 {TEXT} of child 1 {DIV} of root {DIV}
+downstream: position 3 of child 2 {TEXT} of child 1 {DIV} of root {DIV}
diff --git a/LayoutTests/editing/unsupported-content/list-type-before.html b/LayoutTests/editing/unsupported-content/list-type-before.html
new file mode 100644 (file)
index 0000000..5cbe129
--- /dev/null
@@ -0,0 +1,74 @@
+<html> 
+<head>
+
+<style>
+.editing { 
+    border: 2px solid red; 
+    font-size: 24px; 
+}
+.explanation { 
+    border: 4px solid blue; 
+    padding: 16px; 
+    font-size: 18px; 
+    margin-bottom: 10px;
+}
+.scenario:first-line { font-weight: bold; font-size: 24px; }
+.expected:first-line { font-weight: bold; font-size: 24px; }
+.results { margin-bottom: 10px; border: 2px solid green; font-size: 24px; }
+</style>
+<script src=../editing.js language="JavaScript" type="text/JavaScript" ></script>
+
+<script>
+
+function editingTest() {
+    for (i = 0; i < 3; i++)
+        typeCharacterCommand("x");
+}
+
+</script>
+
+<title>Editing Test</title> 
+</head> 
+<body>
+
+<div class="explanation">
+<div class="scenario">
+Tests: 
+<br>
+Our ability to "edit around" content the HTML editing code does not yet handle very well.
+<br><i>For this test: </i>Test typing at the start of a list.
+</div>
+<br>
+<div class="expected">
+Expected Results:
+<br>
+The content in the red box must exactly match the content in the green box (except for the border color).
+<br><i>For this test: </i>Typed text should appear before (on the line above) the list.
+</div>
+</div>
+
+<div class="results">
+xxx
+<ul>
+<li>line one</li>
+<li>line two</li>
+<li>line three</li>
+</ul>
+</div>
+
+<div contenteditable id="root" style="word-wrap: break-word; -khtml-nbsp-mode: space; -khtml-line-break: after-white-space;">
+<div id="test" class="editing">
+<ul>
+<li>line one</li>
+<li>line two</li>
+<li>line three</li>
+</ul>
+</div>
+</div>
+
+<script>
+runEditingTest();
+</script>
+
+</body>
+</html>
index 386be4040530a2098d5b5c887f1d40e5dfb57ee7..d0c24d14cfd1052a1cf328e19df616dd07e3809d 100644 (file)
@@ -1,3 +1,20 @@
+2005-03-20  Ken Kocienda  <kocienda@apple.com>
+
+        Reviewed by me
+        
+        Added tests to cover new "unsupported content" editing code.
+
+        * layout-tests/editing/unsupported-content/list-delete-001-expected.txt: Added.
+        * layout-tests/editing/unsupported-content/list-delete-001.html: Added.
+        * layout-tests/editing/unsupported-content/list-delete-002-expected.txt: Added.
+        * layout-tests/editing/unsupported-content/list-delete-002.html: Added.
+        * layout-tests/editing/unsupported-content/list-delete-003-expected.txt: Added.
+        * layout-tests/editing/unsupported-content/list-delete-003.html: Added.
+        * layout-tests/editing/unsupported-content/list-type-after-expected.txt: Added.
+        * layout-tests/editing/unsupported-content/list-type-after.html: Added.
+        * layout-tests/editing/unsupported-content/list-type-before-expected.txt: Added.
+        * layout-tests/editing/unsupported-content/list-type-before.html: Added.
+
 2005-03-20  Ken Kocienda  <kocienda@apple.com>
 
         Reviewed by Maciej