| <!DOCTYPE html> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| <body> |
| <form action="javascript: redirect()"></form> |
| <script> |
| var f1 = document.forms[0]; |
| test(function() { |
| f1.parentNode.removeChild(f1); |
| f1.submit(); |
| }, 'Submitting a form that has been removed.'); |
| |
| var f2 = document.createElement('form'); |
| f2.action = "javascript: redirect()"; |
| test(function() { |
| f2.submit(); |
| }, 'Submitting a form that has never been attached to the document.'); |
| |
| document.body.appendChild(f2); |
| var f3 = f2.cloneNode(true); |
| f2.action = "javascript: submit_success()"; |
| f3.action = "javascript: redirect()"; |
| test(function() { |
| f2.submit(); |
| }, 'Submitting a form that is attached to the document.'); |
| |
| test(function() { |
| f3.submit(); |
| }, 'Submitting a form cloned from a form that is attached to the document.'); |
| |
| function redirect() { |
| assert_unreached('A form should never be submitted if it is not attached to the document.'); |
| } |
| |
| function submit_success() { |
| assert_true(true, 'A form that is attached to the document should be submitted.'); |
| } |
| |
| </script> |
| </body> |