diff options
author | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
---|---|---|
committer | Matt A. Tobin <mattatobin@localhost.localdomain> | 2018-02-02 04:16:08 -0500 |
commit | 5f8de423f190bbb79a62f804151bc24824fa32d8 (patch) | |
tree | 10027f336435511475e392454359edea8e25895d /testing/web-platform/tests/html/semantics/document-metadata/the-base-element | |
parent | 49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff) | |
download | UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip |
Add m-esr52 at 52.6.0
Diffstat (limited to 'testing/web-platform/tests/html/semantics/document-metadata/the-base-element')
10 files changed, 183 insertions, 0 deletions
diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/.gitkeep b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/.gitkeep new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/.gitkeep diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_about_blank.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_about_blank.html new file mode 100644 index 000000000..54c479454 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_about_blank.html @@ -0,0 +1,19 @@ +<!doctype html> +<meta charset=utf-8> +<title>base element in about:blank document should resolve against its fallback base URI</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<iframe></iframe> +<script> +var t = async_test(); +addEventListener("load", t.step_func_done(function() { + var doc = frames[0].document; + var b = doc.createElement("base"); + b.setAttribute("href", "test"); + var newBaseValue = location.href.replace(/\/[^/]*$/, "/") + "test"; + assert_equals(b.href, newBaseValue); + assert_equals(doc.baseURI, location.href); + doc.head.appendChild(b); + assert_equals(doc.baseURI, newBaseValue); +})); +</script> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_empty.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_empty.html new file mode 100644 index 000000000..7737556a1 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_empty.html @@ -0,0 +1,29 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>HTML Test: base_href_empty</title> +<link rel="author" title="Intel" href="http://www.intel.com/"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-base-element"> +<base id="base" href="" target="_blank"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<div id="log"></div> +<img id="test" src="/images/blue-100x100.png" style="display:none"> + +<script> + var testElement, + baseElement; + + setup(function() { + testElement = document.getElementById("test"); + baseElement = document.getElementById("base"); + }); + + test(function() { + assert_equals(baseElement.href, document.location.href, "The href of base element is incorrect."); + }, "The value of the href attribute must be the document's address if it is empty"); + + test(function() { + var exp = testElement.src.substring(0, testElement.src.lastIndexOf("/images/blue-100x100.png") + 1); + assert_true(baseElement.href.indexOf(exp) != -1, "The src of img element is incorrect."); + }, "The src attribute of the img element must relative to document's address"); +</script> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_invalid.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_invalid.html new file mode 100644 index 000000000..6d12d29e8 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_invalid.html @@ -0,0 +1,12 @@ +<!doctype html> +<meta charset=utf-8> +<title>base element with unparseable href should have .href getter return attr value</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<script> +test(function() { + var b = document.createElement("base"); + b.setAttribute("href", "//test:test"); + assert_equals(b.href, "//test:test"); +}); +</script> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html new file mode 100644 index 000000000..83e71387a --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_specified.sub.html @@ -0,0 +1,33 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>HTML Test: base_href_specified</title> +<link rel="author" title="Intel" href="http://www.intel.com/"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-base-element"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script src="/common/get-host-info.sub.js"></script> +<base id="base"> +<div id="log"></div> +<img id="test" src="test.ico" style="display:none"> + +<script> + var testElement; + var baseElement; + + var otherOrigin = get_host_info().HTTP_REMOTE_ORIGIN; + + setup(function() { + testElement = document.getElementById("test"); + baseElement = document.getElementById("base"); + + baseElement.setAttribute("href", otherOrigin); + }); + + test(function() { + assert_equals(baseElement.href, otherOrigin + "/", "The href attribute of the base element is incorrect."); + }, "The href attribute of the base element is specified"); + + test(function() { + assert_equals(testElement.src, otherOrigin + "/test.ico", "The src attribute of the img element is incorrect."); + }, "The src attribute of the img element must relative to the href attribute of the base element"); +</script> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_unspecified.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_unspecified.html new file mode 100644 index 000000000..cf883f723 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_href_unspecified.html @@ -0,0 +1,30 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>HTML Test: base_href_unspecified</title> +<link rel="author" title="Intel" href="http://www.intel.com/"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-base-element"> +<base id="base" target="_blank"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> + +<div id="log"></div> +<img id="test" src="/images/blue-100x100.png" style="display:none"> + +<script> + var testElement, + baseElement; + + setup(function () { + testElement = document.getElementById("test"); + baseElement = document.getElementById("base"); + }); + + test(function() { + assert_equals(baseElement.href, document.location.href, "Return the document base URL if the base element has no href content attribute."); + }, "The value of the href attribute must be the document's address if it is unspecified"); + + test(function() { + var exp = testElement.src.substring(0, testElement.src.lastIndexOf("/images/blue-100x100.png") + 1); + assert_true(baseElement.href.indexOf(exp) != -1, "The src attribute of the img element is incorrect."); + }, "The src attribute of the img element must relative to document's address"); +</script> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_multiple.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_multiple.html new file mode 100644 index 000000000..4b7c0d213 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_multiple.html @@ -0,0 +1,29 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>HTML Test: base_multiple</title> +<link rel="author" title="Intel" href="http://www.intel.com/"> +<link rel="help" href="https://html.spec.whatwg.org/multipage/#the-base-element"> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<body> + <div id="log"></div> + <iframe id="test1" src="example.html" style="width:0;height:0" frameborder="0"></iframe> + <iframe id="test2" src="example.html" name="targetWin" style="width:0;height:0" frameborder="0"></iframe> + <script> + async_test(function() { + window.onload = this.step_func(function() { + var fr1 = document.getElementById("test1"); + fr1.addEventListener("load", this.unreached_func("loaded in the wrong iframe")); + + var fr2 = document.getElementById("test2"); + fr2.addEventListener("load", this.step_func_done(function () { + var doc2 = fr2.contentDocument; + assert_not_equals(doc2.location.href.indexOf("example2.html"), -1, "The target attribute does not impact the a element."); + assert_equals(doc2.getElementById("d1").innerHTML, "PASS", "The opend page should be the example2.html."); + }), true); + + fr1.contentDocument.getElementById("a1").click(); + }); + }, "The attributes of the a element must be affected by the first base element"); + </script> +</body> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_srcdoc.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_srcdoc.html new file mode 100644 index 000000000..eea1efe51 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/base_srcdoc.html @@ -0,0 +1,19 @@ +<!doctype html> +<meta charset=utf-8> +<title>base element in srcdoc document should resolve against its fallback base URI</title> +<script src=/resources/testharness.js></script> +<script src=/resources/testharnessreport.js></script> +<iframe srcdoc=""></iframe> +<script> +var t = async_test(); +addEventListener("load", t.step_func_done(function() { + var doc = frames[0].document; + var b = doc.createElement("base"); + b.setAttribute("href", "test"); + var newBaseValue = location.href.replace(/\/[^/]*$/, "/") + "test"; + assert_equals(b.href, newBaseValue); + assert_equals(doc.baseURI, location.href); + doc.head.appendChild(b); + assert_equals(doc.baseURI, newBaseValue); +})); +</script> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example.html new file mode 100644 index 000000000..49dc772f9 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example.html @@ -0,0 +1,7 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>Example</title> +<base target="targetWin" href=""> +<base target="_self" href="http://www.example.com/"> +<link rel="author" title="Intel" href="http://www.intel.com/"> +<a id="a1" href="example2.html" target="">click me</a> diff --git a/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example2.html b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example2.html new file mode 100644 index 000000000..0e57cb9c5 --- /dev/null +++ b/testing/web-platform/tests/html/semantics/document-metadata/the-base-element/example2.html @@ -0,0 +1,5 @@ +<!DOCTYPE html> +<meta charset="utf-8"> +<title>Example</title> +<link rel="author" title="Intel" href="http://www.intel.com/"> +<div id="d1">PASS</div> |