Closed Bug 1726785 Opened 3 years ago Closed 2 years ago

[wpt-sync] Sync PR 30111 - Add options parameter to createSyncAccessHandle()

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox100 fixed)

RESOLVED FIXED
100 Branch
Tracking Status
firefox100 --- fixed

People

(Reporter: mozilla.org, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

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

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

b'Emanuel Krivoy <krivoy@google.com>' wrote:

Add options parameter to createSyncAccessHandle()

For now the only accepted (and required) option is "mode: 'in-place'".
Having this parameter allows us to later define a more appropriate
default behavior for access handles than the one we currently implement.
This is specially useful in the context of expanding access handle usage
outside of OPFS.

For more details check:
https://github.com/WICG/file-system-access/blob/main/AccessHandle.md#exposing-accesshandles-on-all-filesystems

Bug: 1218431
Change-Id: I50d0a4acfd81874e17b6b28d1c2bf446b0397a4d
Reviewed-on: https://chromium-review.googlesource.com/3110487
WPT-Export-Revision: ec291ffdcb74a28ad8da5616e75d012293b3f7c9

Whiteboard: [wptsync downstream] → [wptsync downstream error]
Whiteboard: [wptsync downstream error] → [wptsync downstream]

CI Results

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

Total 6 tests and 3 subtests

Status Summary

Firefox

OK : 6
FAIL: 35

Chrome

OK : 6
PASS: 35

Safari

OK : 6
FAIL: 35

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

/file-system-access/sandboxed_FileSystemFileHandle-sync-access-handle-writable-lock.https.tentative.worker.html
There can only be one open access handle at any given time: FAIL (Chrome: PASS, Safari: FAIL)
An access handle from one file does not interfere with the creation of an access handle on another file: FAIL (Chrome: PASS, Safari: FAIL)
A writable stream from one file does not interfere with the creation of an access handle on another file: FAIL (Chrome: PASS, Safari: FAIL)
An access handle from one file does not interfere with the creation of a writable stream on another file: FAIL (Chrome: PASS, Safari: FAIL)
Writable streams cannot be created if there is an open access handle: FAIL (Chrome: PASS, Safari: FAIL)
Access handles cannot be created if there are open Writable streams: FAIL (Chrome: PASS, Safari: FAIL)
/file-system-access/sandboxed_FileSystemSyncAccessHandle-close.https.tentative.worker.html
SyncAccessHandle.close is idempotent: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.close is idempotent when called immediately: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.read fails after SyncAccessHandle.close settles: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.read fails immediately after calling SyncAccessHandle.close: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.write fails after SyncAccessHandle.close settles: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.write fails immediately after calling SyncAccessHandle.close: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.flush fails after SyncAccessHandle.close settles: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.flush fails immediately after calling SyncAccessHandle.close: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.getSize fails after SyncAccessHandle.close settles: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.getSize fails immediately after calling SyncAccessHandle.close: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.truncate fails after SyncAccessHandle.close settles: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.truncate fails immediately after calling SyncAccessHandle.close: FAIL (Chrome: PASS, Safari: FAIL)
/file-system-access/sandboxed_FileSystemSyncAccessHandle-flush.https.tentative.worker.html
Test flush on an empty file.: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.read returns bytes written by SyncAccessHandle.write after SyncAccessHandle.flush: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.read fails when there is a pending SyncAccessHandle.flush: FAIL (Chrome: PASS, Safari: FAIL)
SyncAccessHandle.write fails when there is a pending SyncAccessHandle.flush: FAIL (Chrome: PASS, Safari: FAIL)
/file-system-access/sandboxed_FileSystemSyncAccessHandle-getSize.https.tentative.worker.html
test SyncAccessHandle.getSize after SyncAccessHandle.write: FAIL (Chrome: PASS, Safari: FAIL)
test createSyncAccessHandle.getSize with pending operation: FAIL (Chrome: PASS, Safari: FAIL)
/file-system-access/sandboxed_FileSystemSyncAccessHandle-read-write.https.tentative.worker.html
Test reading an empty file through a sync access handle.: FAIL (Chrome: PASS, Safari: FAIL)
Test writing and reading through a sync access handle.: FAIL (Chrome: PASS, Safari: FAIL)
Test second write that is bigger than the first write: FAIL (Chrome: PASS, Safari: FAIL)
Test second write that is smaller than the first write: FAIL (Chrome: PASS, Safari: FAIL)
Test initial write with an offset: FAIL (Chrome: PASS, Safari: FAIL)
Test overwriting the file at an offset: FAIL (Chrome: PASS, Safari: FAIL)
Test read at an offset: FAIL (Chrome: PASS, Safari: FAIL)
Test reading at a negative offset fails.: FAIL (Chrome: PASS, Safari: FAIL)
/file-system-access/sandboxed_FileSystemSyncAccessHandle-truncate.https.tentative.worker.html
test createSyncAccessHandle.truncate with pending operation: FAIL (Chrome: PASS, Safari: FAIL)
test SyncAccessHandle.truncate with different sizes: FAIL (Chrome: PASS, Safari: FAIL)
test SyncAccessHandle.truncate after SyncAccessHandle.write: FAIL (Chrome: PASS, Safari: FAIL)

Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/cf80730817a8
[wpt PR 30111] - Add options parameter to createSyncAccessHandle(), a=testonly
Pushed by wptsync@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/7802f4c04d45
[wpt PR 30111] - Add options parameter to createSyncAccessHandle(), a=testonly
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Target Milestone: --- → 100 Branch
You need to log in before you can comment on or make changes to this bug.