| <!DOCTYPE html> |
| |
| <!-- It's important these blocking script fetches precede the meta tag, in |
| order not to affect the use counters being measured. --> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/gen/layout_test_data/mojo/public/js/mojo_bindings.js"></script> |
| <script src="/gen/third_party/blink/public/mojom/web_feature/web_feature.mojom.js"></script> |
| |
| <head> |
| <meta name=referrer content="origin, origin" /> |
| </head> |
| |
| <script> |
| 'use strict'; |
| |
| promise_test(async t => { |
| try { |
| await fetch('/resources/dummy.html', { |
| referrerPolicy: 'origin' |
| }); |
| assert_false(internals.isUseCounted(document, blink.mojom.WebFeature.kHTMLMetaElementReferrerPolicyMultipleTokensAffectingRequest), "Counter shouldn't be populated"); |
| } finally { |
| internals.clearUseCounter(document, blink.mojom.WebFeature.kHTMLMetaElementReferrerPolicyMultipleTokensAffectingRequest); |
| } |
| }, "<meta name=referrer> with multiple tokens doesn't affect the referrers of requests with explicitly set policies."); |
| |
| promise_test(async t => { |
| try { |
| await fetch('/resources/dummy.html'); |
| assert_true(internals.isUseCounted(document, blink.mojom.WebFeature.kHTMLMetaElementReferrerPolicyMultipleTokensAffectingRequest), "Counter should be populated"); |
| } finally { |
| internals.clearUseCounter(document, blink.mojom.WebFeature.kHTMLMetaElementReferrerPolicyMultipleTokensAffectingRequest); |
| } |
| }, "<meta name=referrer> with multiple tokens does affect the referrers of this request using its document's policy."); |
| </script> |