tree: 5e9db73f1ea3f001e81ea1677d2a1f4fcbcc6d39 [path history] [tgz]
  1. resources/
  2. cookieStore_delete_arguments.tentative.window.js
  3. cookieStore_delete_basic.tentative.window.js
  4. cookieStore_event_arguments.tenative.window.js
  5. cookieStore_event_basic.tentative.window.js
  6. cookieStore_event_delete.tenative.window.js
  7. cookieStore_event_overwrite.tentative.window.js
  8. cookieStore_get_arguments.tentative.window.js
  9. cookieStore_get_delete_basic.tentative.window.js
  10. cookieStore_get_set_basic.tentative.window.js
  11. cookieStore_getAll_arguments.tentative.window.js
  12. cookieStore_getAll_set_basic.tentative.window.js
  13. cookieStore_has_arguments.tentative.window.js
  14. cookieStore_has_basic.tentative.window.js
  15. cookieStore_in_detached_frame.tentative.html
  16. cookieStore_set_arguments.tentative.window.js
  17. cookieStore_set_expires_option.tentative.window.js
  18. cookieStore_special_names.tentative.html
  19. cookieStore_special_names.tentative.https.html
  20. document_cookie.tentative.html
  21. document_cookie.tentative.https.html
  22. document_getAll_multiple.tentative.html
  23. http_cookie_and_set_cookie_headers.tentative.html
  24. http_cookie_and_set_cookie_headers.tentative.https.html
  25. httponly_cookies.window.js
  26. idlharness.tentative.html
  27. idlharness_serviceworker.js
  28. idlharness_serviceworker.tentative.https.html
  29. no_name_and_no_value.tentative.html
  30. no_name_and_no_value.tentative.https.html
  31. no_name_equals_in_value.tentative.html
  32. no_name_equals_in_value.tentative.https.html
  33. no_name_multiple_values.tentative.html
  34. no_name_multiple_values.tentative.https.html
  35. ordering.tentative.https.html
  36. OWNERS
  37. README.md
  38. serviceworker_cookieStore_arguments.js
  39. serviceworker_cookieStore_arguments.tentative.https.html
  40. serviceworker_cookieStore_basic.js
  41. serviceworker_cookieStore_basic.tentative.https.html
cookie-store/README.md

This directory contains tests for the Async Cookies API.

Note on cookie naming conventions

A simple origin cookie is a cookie named with the __Host- prefix which is always secure-flagged, always implicit-domain, always /-scoped, and hence always unambiguous in the cookie jar serialization and origin-scoped. It can be treated as a simple key/value pair.

"LEGACY" in a cookie name here means it is an old-style unprefixed cookie name, so you can't tell e.g. whether it is Secure-flagged or /-pathed just by looking at it, and its flags, domain and path may vary even in a single cookie jar serialization leading to apparent duplicate entries, ambiguities, and complexity (i.e. it cannot be treated as a simple key/value pair.)

Cookie names used in the tests are intended to be realistic. Traditional session cookie names are typically all-upper-case for broad framework compatibility. The more modern "__Host-" prefix has only one allowed casing. An expected upgrade path from traditional “legacy” cookie names to simple origin cookie names is simply to prefix the traditional name with the "__Host-" prefix.

Many of the used cookie names are non-ASCII to ensure straightforward internationalization is possible at every API surface. These work in many modern browsers, though not yet all of them.