Closed Bug 1710945 Opened 3 years ago Closed 3 years ago

[wpt-sync] Sync PR 28980 - Extend CSS module test coverage

Categories

(Core :: DOM: Core & HTML, task, P4)

task

Tracking

()

RESOLVED FIXED
91 Branch
Tracking Status
firefox91 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

(Blocks 1 open bug, )

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 28980 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/28980
Details from upstream follow.

b'Dan Clark <daniec@microsoft.com>' wrote:

Extend CSS module test coverage

Add tests for CSS modules to match the level of coverage that currently
exists for JSON modules. The new tests are mostly straightforward
copies of the JSON modules tests, switched over to CSS.

  • Cross-origin imports fail without the
    Access-Control-Allow-Origin response header.
  • The crossOrigin CORS policy is respected
  • referrerPolicy is respected.
  • The \<script> element's integrity attribute is respected.
  • CSS modules are always decoded as UTF-8 regardless of Content-Type
    or the document's encoding. The existing coverage we had on this in
    utf8.tentative.html was renamed to charset.html, refactored, and
    expanded.
  • CSS MIME type checks work correctly.
  • Validate that the load event fires when appropriate for
    a \<script> element containing a CSS module import. Also check that
    the error event is fired when a CSS module 404s.
  • A \<script type="module"> with a src that is CSS doesn't load.

Also add a couple of checks for @import and parse error behavior in
import-css-module-basic.html.

Bug: 992499
Change-Id: I93c7196918876d3657ecfd7d38daee7504fa98b2

Reviewed-on: https://chromium-review.googlesource.com/2877633
WPT-Export-Revision: 5127790ef682e4dbe92746cae59e8858cba72fa2

Component: web-platform-tests → DOM: Core & HTML
Product: Testing → Core

CI Results

Ran 16 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 12 tests and 1 subtests

Status Summary

Firefox

OK : 4
PASS : 4
FAIL : 12
TIMEOUT: 2
ERROR : 7
NOTRUN : 9

Chrome

OK : 12
PASS : 44

Safari

OK : 7
PASS : 12
FAIL : 15
TIMEOUT: 4
ERROR : 2

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

Firefox-only Failures

/html/semantics/scripting-1/the-script-element/css-module/content-type-checking.html: ERROR
application/css: NOTRUN
text/html+css: NOTRUN
/html/semantics/scripting-1/the-script-element/css-module/cors-crossorigin-requests.html
Imported CSS module, cross-origin, missing CORS ACAO header: FAIL
/html/semantics/scripting-1/the-script-element/css-module/integrity.html: ERROR
/html/semantics/scripting-1/the-script-element/css-module/load-error-events.html: ERROR
inline, 404, parser-inserted: NOTRUN
src, 404, parser-inserted: FAIL
src, 404, not parser-inserted: FAIL
inline, 404, not parser-inserted: NOTRUN

New Tests That Don't Pass

/html/semantics/scripting-1/the-script-element/css-module/charset-2.html: ERROR (Chrome: OK, Safari: TIMEOUT)
/html/semantics/scripting-1/the-script-element/css-module/charset.html: ERROR (Chrome: OK, Safari: ERROR)
/html/semantics/scripting-1/the-script-element/css-module/content-type-checking.html: ERROR (Chrome: OK, Safari: OK)
text/css: NOTRUN (Chrome: PASS, Safari: FAIL)
application/css: NOTRUN (Chrome: PASS, Safari: PASS)
text/html+css: NOTRUN (Chrome: PASS, Safari: PASS)
text/css;boundary=something: NOTRUN (Chrome: PASS, Safari: FAIL)
text/css;foo=bar: NOTRUN (Chrome: PASS, Safari: FAIL)
/html/semantics/scripting-1/the-script-element/css-module/cors-crossorigin-requests.html
Imported CSS module, cross-origin with CORS: FAIL (Chrome: PASS, Safari: FAIL)
Imported CSS module, cross-origin, missing CORS ACAO header: FAIL (Chrome: PASS, Safari: PASS)
Imported CSS module with parse error, cross-origin, with CORS: FAIL (Chrome: PASS, Safari: FAIL)
/html/semantics/scripting-1/the-script-element/css-module/credentials.sub.html
CSS Modules should be loaded with or without the credentials based on the same-origin-ness and the crossOrigin attribute: FAIL (Chrome: PASS, Safari: FAIL)
/html/semantics/scripting-1/the-script-element/css-module/css-module-worker-test.html: TIMEOUT (Chrome: OK, Safari: TIMEOUT)
A dynamic import CSS Module within a web worker should not load.: TIMEOUT (Chrome: PASS, Safari: TIMEOUT)
/html/semantics/scripting-1/the-script-element/css-module/import-css-module-basic.html
A CSS Module should load: FAIL (Chrome: PASS, Safari: FAIL)
A large CSS Module should load: FAIL (Chrome: PASS, Safari: FAIL)
An @import CSS Module should not load, but should not throw an exception: FAIL (Chrome: PASS, Safari: FAIL)
A parse error should not prevent subsequent rules from being included in a CSS module: FAIL (Chrome: PASS, Safari: FAIL)
/html/semantics/scripting-1/the-script-element/css-module/import-css-module-dynamic.html: ERROR (Chrome: OK, Safari: ERROR)
/html/semantics/scripting-1/the-script-element/css-module/integrity.html: ERROR (Chrome: OK, Safari: OK)
/html/semantics/scripting-1/the-script-element/css-module/load-error-events.html: ERROR (Chrome: OK, Safari: OK)
inline, 200, parser-inserted: NOTRUN (Chrome: PASS, Safari: FAIL)
inline, 404, parser-inserted: NOTRUN (Chrome: PASS, Safari: PASS)
src, 200, parser-inserted: FAIL (Chrome: PASS, Safari: FAIL)
src, 404, parser-inserted: FAIL (Chrome: PASS, Safari: PASS)
src, 200, not parser-inserted: FAIL (Chrome: PASS, Safari: FAIL)
src, 404, not parser-inserted: FAIL (Chrome: PASS, Safari: PASS)
inline, 200, not parser-inserted: NOTRUN (Chrome: PASS, Safari: FAIL)
inline, 404, not parser-inserted: NOTRUN (Chrome: PASS, Safari: PASS)
/html/semantics/scripting-1/the-script-element/css-module/referrer-policies.sub.html: ERROR (Chrome: OK, Safari: TIMEOUT)

Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/da1c777ecc68
[wpt PR 28980] - Extend CSS module test coverage, a=testonly
https://hg.mozilla.org/integration/autoland/rev/177fd9425d96
[wpt PR 28980] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 91 Branch
You need to log in before you can comment on or make changes to this bug.