Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<head>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script src="/cookies/resources/cookie-helper.sub.js"></script>
</head>
<body>
<script>
//
// Set-Cookie: domain-attribute-matches-host=b; Path=/; Domain={{host}}
//
const cookieName = "domain-attribute-matches-host";
// Clean up cookie at the end to avoid interfering with subsequent tests.
add_completion_callback(tests => document.cookie =
`${cookieName}=0; Path=/; Domain={{host}}; expires=01-jan-1970 00:00:00 GMT`);
test(t => {
assert_dom_cookie(cookieName, "b", true);
}, "Domain={{host}} => available via `document.cookie`");
async_test(t => {
fetch("/cookies/resources/list.py", { credentials: "include" })
.then(t.step_func(r => r.json()))
.then(t.step_func_done(r => {
assert_equals(r[cookieName], "b");
}))
.catch(_ => assert_unreached);
}, "Domain={{host}} => sent with same-origin requests.");
async_test(t => {
fetch(`${SECURE_SUBDOMAIN_ORIGIN}/cookies/resources/list.py`, { credentials: "include" })
.then(t.step_func(r => r.json()))
.then(t.step_func_done(r => {
assert_equals(r[cookieName], "b");
}))
.catch(_ => assert_unreached);
}, "Domain={{host}} => sent with subdomain requests.");
</script>
</body>