Closed Bug 1458805 Opened Last year Closed Last year

Intermittent /fetch/api/abort/serviceworker-intercepted.https.html | response.blob() rejects if already aborted - promise_test: Unhandled rejection with value: object "Error: wait_for_state must be passed a ServiceWorker"

Categories

(Core :: DOM: Service Workers, defect, P5)

defect

Tracking

()

RESOLVED FIXED
mozilla61
Tracking Status
firefox61 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: bkelly)

References

(Blocks 1 open bug)

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

Filed by: archaeopteryx [at] coole-files.de

https://treeherder.mozilla.org/logviewer.html#?job_id=176593027&repo=try

https://queue.taskcluster.net/v1/task/I-xw2rvzSZe8aJmPw4GjEA/runs/0/artifacts/public/logs/live_backing.log

[task 2018-05-02T16:55:28.485Z] 16:55:28     INFO - TEST-START | /fetch/api/abort/serviceworker-intercepted.https.html
[task 2018-05-02T16:55:28.487Z] 16:55:28     INFO - Clearing pref dom.streams.enabled
[task 2018-05-02T16:55:28.488Z] 16:55:28     INFO - Clearing pref javascript.options.streams
[task 2018-05-02T16:55:28.505Z] 16:55:28     INFO - Setting pref dom.streams.enabled (true)
[task 2018-05-02T16:55:28.513Z] 16:55:28     INFO - Setting pref javascript.options.streams (true)
[task 2018-05-02T16:55:29.278Z] 16:55:29     INFO - 
[task 2018-05-02T16:55:29.278Z] 16:55:29     INFO - TEST-PASS | /fetch/api/abort/serviceworker-intercepted.https.html | Already aborted request does not land in service worker 
[task 2018-05-02T16:55:29.280Z] 16:55:29     INFO - TEST-PASS | /fetch/api/abort/serviceworker-intercepted.https.html | response.arrayBuffer() rejects if already aborted 
[task 2018-05-02T16:55:29.280Z] 16:55:29     INFO - TEST-UNEXPECTED-FAIL | /fetch/api/abort/serviceworker-intercepted.https.html | response.blob() rejects if already aborted - promise_test: Unhandled rejection with value: object "Error: wait_for_state must be passed a ServiceWorker"
[task 2018-05-02T16:55:29.280Z] 16:55:29     INFO - ....
[task 2018-05-02T16:55:29.280Z] 16:55:29     INFO - TEST-OK | /fetch/api/abort/serviceworker-intercepted.https.html | took 799ms
This is due to a small bug in the test.
Assignee: nobody → bkelly
Status: NEW → ASSIGNED
This makes the serviceworker-intercepted.https.html WPT test use separate scopes for each case.  This avoids a small race between unregistering the service worker in the previous case and registering the service worker in the next case.  The controlled frame is removed, but pending events can also keep the service worker registration alive for short periods of time.
Attachment #8972878 - Flags: review?(amarchesini)
The test also previously left a service worker registered since it did not call cleanup() after the last case.
Attachment #8972878 - Flags: review?(amarchesini) → review+
Pushed by bkelly@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/f127f18d19a9
Make abort/serviceworker-intercepted.https.html WPT cases use unique scopes. r=baku
Created web-platform-tests PR https://github.com/w3c/web-platform-tests/pull/10825 for changes under testing/web-platform/tests
Upstream web-platform-tests status checks passed, PR will merge once commit reaches central.
https://hg.mozilla.org/mozilla-central/rev/f127f18d19a9
Status: ASSIGNED → RESOLVED
Closed: Last year
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
Upstream PR merged
You need to log in before you can comment on or make changes to this bug.