| <!DOCTYPE html> |
| <link rel="help" href="https://drafts.csswg.org/css-values-5/#request-url-modifiers"> |
| <link rel="author" title="Sam Weinig" href="mailto:weinig@webkit.org"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="/css/support/parsing-testcommon.js"></script> |
| <script> |
| |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin())'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin(,))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin(anonymous,))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin(,anonymous))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin(anonymous foobar))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin(anonymous) cross-origin(anonymous))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin(anonymous) cross-origin(use-credentials))'); |
| test_invalid_value('background-image', 'url(cross-origin(anonymous) "http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png")'); |
| test_invalid_value('background-image', '"http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" cross-origin(anonymous)'); |
| |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity())'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity(,))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity("sha384-foobar",))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity(,"sha384-foobar"))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity("sha384-foobar" foobar))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity(sha384-foobar))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity("sha384-foobar") integrity("sha384-foobar"))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity("sha384-foobar") integrity("sha384-barbaz"))'); |
| test_invalid_value('background-image', 'url(integrity("sha384-foobar") "http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png")'); |
| test_invalid_value('background-image', '"http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" integrity("sha384-foobar")'); |
| |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy())'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(,))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(no-referrer,))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(,no-referrer))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(no-referrer foobar))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(no-referrer same-origin))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(no-referrer) referrer-policy(no-referrer))'); |
| test_invalid_value('background-image', 'url("http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(no-referrer) referrer-policy(same-origin))'); |
| test_invalid_value('background-image', 'url(referrer-policy(no-referrer) "http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png")'); |
| test_invalid_value('background-image', '"http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png" referrer-policy(no-referrer)'); |
| |
| // Duplicates of unknown <url-modifier>s are not allowed, even though |
| // individual unknown modifiers are silently ignored. |
| test_invalid_value('background-image', 'url("/css/support/1x1-green.png" foobar(baz) foobar(baz))'); |
| test_invalid_value('background-image', 'url("/css/support/1x1-green.png" foobar(baz) foobar(qux))'); |
| test_invalid_value('background-image', 'url("/css/support/1x1-green.png" foobar foobar)'); |
| test_invalid_value('background-image', 'url("/css/support/1x1-green.png" FooBar foobar)'); |
| |
| // Tokens that aren't an ident or function should be a parse error. |
| test_invalid_value('background-image', 'url("/css/support/1x1-green.png" 42)'); |
| test_invalid_value('background-image', 'url("/css/support/1x1-green.png" "foobar")'); |
| |
| // "A <url> that is either unquoted or not wrapped in url() notation |
| // cannot accept any <url-modifier>s." |
| // https://drafts.csswg.org/css-values-4/#url-modifiers |
| test_invalid_value('background-image', 'url(http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png cross-origin(anonymous))'); |
| test_invalid_value('background-image', 'url(http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png integrity("sha384-foobar"))'); |
| test_invalid_value('background-image', 'url(http://{{hosts[][]}}:{{ports[http][0]}}/css/support/1x1-green.png referrer-policy(no-referrer))'); |
| |
| </script> |