Move LinkProcessingOptions into separate file (#39033)

This makes future implementations easier where we will reuse most of
this code to parse Link headers.

Part of #35035

Signed-off-by: Tim van der Lippe <tvanderlippe@gmail.com>
This commit is contained in:
Tim van der Lippe 2025-09-02 18:31:39 +02:00 committed by GitHub
parent efe9ea2306
commit a1f9e3e133
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
23 changed files with 311 additions and 573 deletions

View file

@ -1,3 +0,0 @@
[dynamic-adding-preload.html]
[Makes sure that a dynamically added preloaded resource is downloaded]
expected: FAIL

View file

@ -1,4 +1,5 @@
[preload-error.sub.html]
expected: TIMEOUT
[404 (image): main]
expected: FAIL
@ -26,12 +27,6 @@
[CSP-error (xhr): main]
expected: FAIL
[success (fetch): main]
expected: FAIL
[404 (fetch): main]
expected: FAIL
[CORS (fetch): main]
expected: FAIL
@ -55,21 +50,3 @@
[MIME-blocked-nosniff (script): main]
expected: FAIL
[success (xhr): main]
expected: FAIL
[CORS (style): main]
expected: FAIL
[success (style): main]
expected: FAIL
[404 (script): main]
expected: FAIL
[Decode-error (style): main]
expected: FAIL
[CORS (xhr): main]
expected: FAIL

View file

@ -1,12 +1,6 @@
[preload-font-crossorigin.html]
[Same origin font preload with crossorigin attribute]
expected: FAIL
[Same origin font preload without crossorigin attribute]
expected: FAIL
[Cross origin font preload with crossorigin attribute]
expected: FAIL
[Cross origin font preload without crossorigin attribute]
expected: FAIL

View file

@ -0,0 +1,3 @@
[preload-invalid-resources.html]
[Preloading an invalid image (invalid data) should preload and not re-fetch]
expected: FAIL

View file

@ -1,11 +1,5 @@
[preload-referrer-policy.html]
expected: TIMEOUT
[referrer policy ( -> , element, cross-origin)]
expected: FAIL
[referrer policy ( -> , element, same-origin)]
expected: FAIL
[referrer policy ( -> , header, cross-origin)]
expected: TIMEOUT

View file

@ -1,47 +1,11 @@
[preload-resource-match.https.html]
expected: TIMEOUT
[Loading image (no-cors) with link (anonymous) should discard the preloaded response]
expected: FAIL
[Loading image (no-cors) with link (use-credentials) should discard the preloaded response]
expected: FAIL
[Loading image (anonymous) with link (no-cors) should discard the preloaded response]
expected: FAIL
[Loading image (anonymous) with link (use-credentials) should discard the preloaded response]
expected: FAIL
[Loading image (use-credentials) with link (no-cors) should discard the preloaded response]
expected: FAIL
[Loading image (use-credentials) with link (anonymous) should discard the preloaded response]
expected: FAIL
[Loading font (anonymous) with link (no-cors) should discard the preloaded response]
expected: FAIL
[Loading font (anonymous) with link (anonymous) should reuse the preloaded response]
expected: FAIL
[Loading font (anonymous) with link (use-credentials) should discard the preloaded response]
expected: FAIL
[Loading font (same-origin) with link (same-origin) should reuse the preloaded response]
expected: FAIL
[Loading backgroundImage (no-cors) with link (anonymous) should discard the preloaded response]
expected: FAIL
[Loading backgroundImage (no-cors) with link (use-credentials) should discard the preloaded response]
expected: FAIL
[Loading fetch (same-origin) with link (same-origin) should reuse the preloaded response]
expected: FAIL
[Loading fetch (no-cors) with link (no-cors) should reuse the preloaded response]
expected: FAIL
[Loading fetch (no-cors) with link (anonymous) should discard the preloaded response]
expected: FAIL
@ -51,9 +15,6 @@
[Loading fetch (anonymous) with link (no-cors) should discard the preloaded response]
expected: FAIL
[Loading fetch (anonymous) with link (anonymous) should reuse the preloaded response]
expected: FAIL
[Loading fetch (anonymous) with link (use-credentials) should discard the preloaded response]
expected: FAIL
@ -63,53 +24,8 @@
[Loading fetch (use-credentials) with link (anonymous) should discard the preloaded response]
expected: FAIL
[Loading fetch (use-credentials) with link (use-credentials) should reuse the preloaded response]
expected: FAIL
[Loading script (no-cors) with link (anonymous) should discard the preloaded response]
expected: FAIL
[Loading script (no-cors) with link (use-credentials) should discard the preloaded response]
expected: FAIL
[Loading script (anonymous) with link (no-cors) should discard the preloaded response]
expected: FAIL
[Loading script (anonymous) with link (use-credentials) should discard the preloaded response]
expected: FAIL
[Loading script (use-credentials) with link (no-cors) should discard the preloaded response]
expected: FAIL
[Loading script (use-credentials) with link (anonymous) should discard the preloaded response]
expected: TIMEOUT
[Loading script (use-credentials) with link (use-credentials) should reuse the preloaded response]
expected: NOTRUN
[Loading module (same-origin) with link (same-origin) should reuse the preloaded response]
expected: NOTRUN
[Loading module (no-cors) with link (no-cors) should reuse the preloaded response]
expected: NOTRUN
[Loading module (no-cors) with link (anonymous) should discard the preloaded response]
expected: NOTRUN
[Loading module (no-cors) with link (use-credentials) should discard the preloaded response]
expected: NOTRUN
[Loading module (anonymous) with link (no-cors) should discard the preloaded response]
expected: NOTRUN
[Loading module (anonymous) with link (anonymous) should reuse the preloaded response]
expected: NOTRUN
[Loading module (anonymous) with link (use-credentials) should discard the preloaded response]
expected: NOTRUN
[Loading module (use-credentials) with link (no-cors) should discard the preloaded response]
expected: NOTRUN
expected: TIMEOUT
[Loading module (use-credentials) with link (anonymous) should discard the preloaded response]
expected: NOTRUN
@ -146,3 +62,21 @@
[Loading style (use-credentials) with link (use-credentials) should reuse the preloaded response]
expected: NOTRUN
[Loading image (same-origin) with link (same-origin) should reuse the preloaded response]
expected: FAIL
[Loading image (no-cors) with link (no-cors) should reuse the preloaded response]
expected: FAIL
[Loading image (anonymous) with link (anonymous) should reuse the preloaded response]
expected: FAIL
[Loading image (use-credentials) with link (use-credentials) should reuse the preloaded response]
expected: FAIL
[Loading backgroundImage (no-cors) with link (no-cors) should reuse the preloaded response]
expected: FAIL
[Loading backgroundImage (same-origin) with link (same-origin) should reuse the preloaded response]
expected: FAIL

View file

@ -1,6 +1,3 @@
[preload-xhr.html]
[Make an XHR request immediately after creating link rel=preload.]
expected: FAIL
[Make an XHR request after loading link rel=preload.]
expected: FAIL

View file

@ -1,3 +0,0 @@
[single-download-preload.html]
[Makes sure that preloaded resources are not downloaded again when used]
expected: FAIL

View file

@ -8,21 +8,12 @@
[<crossorigin="anonymous"> Same-origin with correct sha512 hash.]
expected: FAIL
[<crossorigin="anonymous"> Same-origin with empty integrity.]
expected: FAIL
[<crossorigin="anonymous"> Same-origin with no integrity.]
expected: FAIL
[<crossorigin="anonymous"> Same-origin with incorrect hash.]
expected: FAIL
[<crossorigin="anonymous"> Same-origin with correct sha256 hash, options.]
expected: FAIL
[<crossorigin="anonymous"> Same-origin with unknown algorithm only.]
expected: FAIL
[<crossorigin="anonymous"> Same-origin with multiple sha256 hashes, including correct.]
expected: FAIL
@ -56,9 +47,6 @@
[Cross-origin, not CORS request, with incorrect sha256.]
expected: FAIL
[<crossorigin="anonymous"> Cross-origin with empty integrity.]
expected: FAIL
[Cross-origin, not CORS request, with empty integrity.]
expected: FAIL

View file

@ -1,40 +1,13 @@
[subresource-integrity.html]
[Same-origin script with correct sha256 hash.]
expected: FAIL
[Same-origin script with correct sha384 hash.]
expected: FAIL
[Same-origin script with correct sha512 hash.]
expected: FAIL
[Same-origin script with empty integrity.]
expected: FAIL
[Same-origin script with incorrect hash.]
expected: FAIL
[Same-origin script with multiple sha256 hashes, including correct.]
expected: FAIL
[Same-origin script with multiple sha256 hashes, including unknown algorithm.]
expected: FAIL
[Same-origin script with sha256 mismatch, sha512 match]
expected: FAIL
[Same-origin script with sha256 match, sha512 mismatch]
expected: FAIL
[<crossorigin='anonymous'> script with correct hash, ACAO: *]
expected: FAIL
[<crossorigin='anonymous'> script with incorrect hash, ACAO: *]
expected: FAIL
[<crossorigin='use-credentials'> script with correct hash, CORS-eligible]
expected: FAIL
[<crossorigin='use-credentials'> script with incorrect hash CORS-eligible]
expected: FAIL
@ -47,21 +20,6 @@
[Cross-origin script, not CORS request, with hash mismatch]
expected: FAIL
[Cross-origin script, empty integrity]
expected: FAIL
[Same-origin script with correct hash, options.]
expected: FAIL
[Same-origin script with unknown algorithm only.]
expected: FAIL
[Same-origin script with matching digest re-uses preload with matching digest.]
expected: FAIL
[Same-origin script with matching digest re-uses preload with matching digest and options.]
expected: FAIL
[Same-origin script with non-matching digest does not re-use preload with matching digest.]
expected: FAIL
@ -86,42 +44,15 @@
[Same-origin script with non-matching digest reuses preload with no digest but fails.]
expected: FAIL
[Same-origin style with correct sha256 hash.]
expected: FAIL
[Same-origin style with correct sha384 hash.]
expected: FAIL
[Same-origin style with correct sha512 hash.]
expected: FAIL
[Same-origin style with empty integrity.]
expected: FAIL
[Same-origin style with incorrect hash.]
expected: FAIL
[Same-origin style with multiple sha256 hashes, including correct.]
expected: FAIL
[Same-origin style with multiple sha256 hashes, including unknown algorithm.]
expected: FAIL
[Same-origin style with sha256 mismatch, sha512 match]
expected: FAIL
[Same-origin style with sha256 match, sha512 mismatch]
expected: FAIL
[<crossorigin='anonymous'> style with correct hash, ACAO: *]
expected: FAIL
[<crossorigin='anonymous'> style with incorrect hash, ACAO: *]
expected: FAIL
[<crossorigin='use-credentials'> style with correct hash, CORS-eligible]
expected: FAIL
[<crossorigin='use-credentials'> style with incorrect hash CORS-eligible]
expected: FAIL
@ -134,21 +65,6 @@
[Cross-origin style, not CORS request, with hash mismatch]
expected: FAIL
[Cross-origin style, empty integrity]
expected: FAIL
[Same-origin style with correct hash, options.]
expected: FAIL
[Same-origin style with unknown algorithm only.]
expected: FAIL
[Same-origin style with matching digest re-uses preload with matching digest.]
expected: FAIL
[Same-origin style with matching digest re-uses preload with matching digest and options.]
expected: FAIL
[Same-origin style with non-matching digest does not re-use preload with matching digest.]
expected: FAIL
@ -193,3 +109,39 @@
[Cross-origin image, not CORS request, with hash mismatch]
expected: FAIL
[Same-origin image with correct sha256 hash.]
expected: FAIL
[Same-origin image with correct sha384 hash.]
expected: FAIL
[Same-origin image with correct sha512 hash.]
expected: FAIL
[Same-origin image with empty integrity.]
expected: FAIL
[Same-origin image with multiple sha256 hashes, including correct.]
expected: FAIL
[Same-origin image with multiple sha256 hashes, including unknown algorithm.]
expected: FAIL
[Same-origin image with sha256 mismatch, sha512 match]
expected: FAIL
[<crossorigin='anonymous'> image with correct hash, ACAO: *]
expected: FAIL
[<crossorigin='use-credentials'> image with correct hash, CORS-eligible]
expected: FAIL
[Cross-origin image, empty integrity]
expected: FAIL
[Same-origin image with correct hash, options.]
expected: FAIL
[Same-origin image with unknown algorithm only.]
expected: FAIL