| <!DOCTYPE html> |
| <html> |
| <head> |
| <script src="../../resources/js-test.js"></script> |
| </head> |
| <body id="body"> |
| <div id="content"> |
| |
| <div id="contenteditable" contenteditable="true" role="textbox">HelloWorld</div> |
| <input type="text" id="text" value="Hello world"> |
| <textarea id="textarea">Hello world</textarea> |
| </div> |
| |
| <p id="description"></p> |
| <div id="console"></div> |
| |
| <script> |
| description("This tests that the replace with range API functions as expected."); |
| |
| if (window.accessibilityController) { |
| var contenteditable = accessibilityController.accessibleElementById("contenteditable"); |
| shouldBeTrue('contenteditable.replaceTextInRange("Blurb", 5, 5)'); |
| shouldBe("contenteditable.stringValue", "'AXValue: HelloBlurb'"); |
| |
| // now test what happens when a control has focus |
| document.getElementById("contenteditable").focus(); |
| shouldBeTrue('contenteditable.replaceTextInRange("Blorg", 5, 5)'); |
| shouldBe("contenteditable.stringValue", "'AXValue: HelloBlorg'"); |
| document.getElementById("contenteditable").blur(); |
| |
| var text = accessibilityController.accessibleElementById("text"); |
| shouldBeTrue('text.replaceTextInRange("blurb", 6, 5)'); |
| shouldBe("text.stringValue", "'AXValue: Hello blurb'"); |
| |
| var textarea = accessibilityController.accessibleElementById("textarea"); |
| shouldBeTrue('textarea.replaceTextInRange("blurb", 6, 5)'); |
| shouldBe("textarea.stringValue", "'AXValue: Hello blurb'"); |
| |
| document.getElementById("content").style.visibility = "hidden"; |
| } |
| |
| </script> |
| |
| </body> |
| </html> |