aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbors-servo <lbergstrom+bors@mozilla.com>2015-11-22 05:03:25 +0530
committerbors-servo <lbergstrom+bors@mozilla.com>2015-11-22 05:03:25 +0530
commitd339d6d3d9242b66831b17cd5513b3e363ee58cc (patch)
tree2745049a65ffca6802b05af977a6690c859bf9ba
parentea690a2dff64d1cb4eb668473d62f1bbcb19f7c8 (diff)
parent8c93046b1c75864fbfe8b42b6bd5ae3970db2e86 (diff)
downloadservo-d339d6d3d9242b66831b17cd5513b3e363ee58cc.tar.gz
servo-d339d6d3d9242b66831b17cd5513b3e363ee58cc.zip
Auto merge of #7923 - eefriedman:url-encoded-test, r=nox
Add test for URL-encoded form submission. This turned out to be a little more complicated than I was hoping... but I can't really think of a better way to do this. <!-- Reviewable:start --> [<img src="https://reviewable.io/review_button.png" height=40 alt="Review on Reviewable"/>](https://reviewable.io/reviews/servo/servo/7923) <!-- Reviewable:end -->
-rw-r--r--tests/wpt/metadata/MANIFEST.json11
-rw-r--r--tests/wpt/metadata/html/semantics/forms/form-submission-0/url-encoded.html.ini5
-rw-r--r--tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/url-encoded.html46
3 files changed, 61 insertions, 1 deletions
diff --git a/tests/wpt/metadata/MANIFEST.json b/tests/wpt/metadata/MANIFEST.json
index 32f8cbe9300..28194a3df92 100644
--- a/tests/wpt/metadata/MANIFEST.json
+++ b/tests/wpt/metadata/MANIFEST.json
@@ -29947,7 +29947,16 @@
},
"local_changes": {
"deleted": [],
- "items": {},
+ "items": {
+ "testharness": {
+ "html/semantics/forms/form-submission-0/url-encoded.html": [
+ {
+ "path": "html/semantics/forms/form-submission-0/url-encoded.html",
+ "url": "/html/semantics/forms/form-submission-0/url-encoded.html"
+ }
+ ]
+ }
+ },
"reftest_nodes": {}
},
"reftest_nodes": {
diff --git a/tests/wpt/metadata/html/semantics/forms/form-submission-0/url-encoded.html.ini b/tests/wpt/metadata/html/semantics/forms/form-submission-0/url-encoded.html.ini
new file mode 100644
index 00000000000..4f322ca7011
--- /dev/null
+++ b/tests/wpt/metadata/html/semantics/forms/form-submission-0/url-encoded.html.ini
@@ -0,0 +1,5 @@
+[url-encoded.html]
+ type: testharness
+ [textarea.simple]
+ expected: FAIL
+
diff --git a/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/url-encoded.html b/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/url-encoded.html
new file mode 100644
index 00000000000..5965b66330b
--- /dev/null
+++ b/tests/wpt/web-platform-tests/html/semantics/forms/form-submission-0/url-encoded.html
@@ -0,0 +1,46 @@
+<!DOCTYPE html>
+<meta charset="utf-8">
+<script src="/resources/testharness.js"></script>
+<script src="/resources/testharnessreport.js"></script>
+<iframe id=testframe src="/common/blank.html"></iframe>
+<script>
+var simple_tests = [
+ {
+ name: "text.simple",
+ input: "<input name=foo value=bara>",
+ output: "foo=bara"
+ },
+ {
+ name: "textarea.simple",
+ input: "<textarea name=foo>bar</textarea>",
+ output: "foo=bar"
+ },
+];
+simple_tests.forEach(function(test_obj) {
+ test_obj.test = async_test(test_obj.name);
+});
+function run_simple_test() {
+ if (simple_tests.length == 0) {
+ return;
+ }
+ test_obj = simple_tests.pop();
+ var t = test_obj.test;
+ var testframe = document.getElementById("testframe");
+ var testdocument = testframe.contentWindow.document;
+ testdocument.body.innerHTML =
+ "<form id=testform action=\"/common/blank.html\">" +
+ test_obj.input +
+ "</form>";
+ testframe.onload = function() {
+ t.step(function (){
+ var get_url = testframe.contentWindow.location.toString();
+ var encoded = get_url.substr(get_url.indexOf("?") + 1);
+ assert_equals(encoded, test_obj.output);
+ });
+ t.done();
+ run_simple_test();
+ };
+ testdocument.getElementById("testform").submit();
+}
+document.getElementById("testframe").onload = run_simple_test;
+</script>