test_bug518122.html (5031B)
1 <!DOCTYPE HTML> 2 <html> 3 <!-- 4 https://bugzilla.mozilla.org/show_bug.cgi?id=518122 5 --> 6 <head> 7 <title>Test for Bug 518122</title> 8 <script src="/tests/SimpleTest/SimpleTest.js"></script> 9 <link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css"/> 10 </head> 11 <body> 12 <a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=518122">Mozilla Bug 518122</a> 13 <p id="display"></p> 14 <div id="content" style="display: none"> 15 16 </div> 17 <pre id="test"> 18 <script type="application/javascript"> 19 20 /** Test for Bug 518122 */ 21 22 SimpleTest.waitForExplicitFinish(); 23 addLoadEvent(runTests); 24 25 var simple_tests = [ ["foo", "foo"], 26 ["", ""], 27 [null, ""], 28 [undefined , "undefined"], 29 ["\n", "\n"], 30 ["\r", "\n"], 31 ["\rfoo", "\nfoo"], 32 ["foo\r", "foo\n"], 33 ["foo\rbar", "foo\nbar"], 34 ["foo\rbar\r", "foo\nbar\n"], 35 ["\r\n", "\n"], 36 ["\r\nfoo", "\nfoo"], 37 ["foo\r\n", "foo\n"], 38 ["foo\r\nbar", "foo\nbar"], 39 ["foo\r\nbar\r\n", "foo\nbar\n"] ]; 40 41 var value_append_tests = [ ["foo", "bar", "foobar"], 42 ["foo", "foo", "foofoo"], 43 ["foobar", "bar", "foobarbar"], 44 ["foobar", "foo", "foobarfoo"], 45 ["foo\n", "foo", "foo\nfoo"], 46 ["foo\r", "foo", "foo\nfoo"], 47 ["foo\r\n", "foo", "foo\nfoo"], 48 ["\n", "\n", "\n\n"], 49 ["\r", "\r", "\n\n"], 50 ["\r\n", "\r\n", "\n\n"], 51 ["\r", "\r\n", "\n\n"], 52 ["\r\n", "\r", "\n\n"], 53 [null, null, "null"], 54 [null, undefined, "undefined"], 55 ["", "", ""] 56 ]; 57 58 59 var simple_tests_for_input = [ ["foo", "foo"], 60 ["", ""], 61 [null, ""], 62 [undefined , "undefined"], 63 ["\n", ""], 64 ["\r", ""], 65 ["\rfoo", "foo"], 66 ["foo\r", "foo"], 67 ["foo\rbar", "foobar"], 68 ["foo\rbar\r", "foobar"], 69 ["\r\n", ""], 70 ["\r\nfoo", "foo"], 71 ["foo\r\n", "foo"], 72 ["foo\r\nbar", "foobar"], 73 ["foo\r\nbar\r\n", "foobar"] ]; 74 75 var value_append_tests_for_input = [ ["foo", "bar", "foobar"], 76 ["foo", "foo", "foofoo"], 77 ["foobar", "bar", "foobarbar"], 78 ["foobar", "foo", "foobarfoo"], 79 ["foo\n", "foo", "foofoo"], 80 ["foo\r", "foo", "foofoo"], 81 ["foo\r\n", "foo", "foofoo"], 82 ["\n", "\n", ""], 83 ["\r", "\r", ""], 84 ["\r\n", "\r\n", ""], 85 ["\r", "\r\n", ""], 86 ["\r\n", "\r", ""], 87 [null, null, "null"], 88 [null, undefined, "undefined"], 89 ["", "", ""] 90 ]; 91 function runTestsFor(el, simpleTests, appendTests) { 92 for(var i = 0; i < simpleTests.length; ++i) { 93 el.value = simpleTests[i][0]; 94 is(el.value, simpleTests[i][1], "Wrong value (wrap=" + el.getAttribute('wrap') + ", simple_test=" + i + ")"); 95 } 96 for (var j = 0; j < appendTests.length; ++j) { 97 el.value = appendTests[j][0]; 98 el.value += appendTests[j][1]; 99 is(el.value, appendTests[j][2], "Wrong value (wrap=" + el.getAttribute('wrap') + ", value_append_test=" + j + ")"); 100 } 101 } 102 103 function runTests() { 104 var textareas = document.getElementsByTagName("textarea"); 105 for (var i = 0; i < textareas.length; ++i) { 106 runTestsFor(textareas[i], simple_tests, value_append_tests); 107 } 108 var input = document.getElementsByTagName("input")[0]; 109 runTestsFor(input, simple_tests_for_input, value_append_tests_for_input); 110 // initialize the editor 111 input.focus(); 112 input.blur(); 113 runTestsFor(input, simple_tests_for_input, value_append_tests_for_input); 114 SimpleTest.finish(); 115 } 116 117 118 </script> 119 </pre> 120 <textarea cols="30" rows="7" wrap="none"></textarea> 121 <textarea cols="30" rows="7" wrap="off"></textarea><br> 122 <textarea cols="30" rows="7" wrap="soft"></textarea> 123 <textarea cols="30" rows="7" wrap="hard"></textarea> 124 <input type="text"> 125 </body> 126 </html>