diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:22:09 +0000 |
commit | 43a97878ce14b72f0981164f87f2e35e14151312 (patch) | |
tree | 620249daf56c0258faa40cbdcf9cfba06de2a846 /testing/web-platform/tests/fs/resources/sandboxed-fs-test-helpers.js | |
parent | Initial commit. (diff) | |
download | firefox-upstream.tar.xz firefox-upstream.zip |
Adding upstream version 110.0.1.upstream/110.0.1upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/web-platform/tests/fs/resources/sandboxed-fs-test-helpers.js')
-rw-r--r-- | testing/web-platform/tests/fs/resources/sandboxed-fs-test-helpers.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/testing/web-platform/tests/fs/resources/sandboxed-fs-test-helpers.js b/testing/web-platform/tests/fs/resources/sandboxed-fs-test-helpers.js new file mode 100644 index 0000000000..9c93212f49 --- /dev/null +++ b/testing/web-platform/tests/fs/resources/sandboxed-fs-test-helpers.js @@ -0,0 +1,24 @@ +// This file defines a directory_test() function that can be used to define +// tests that require a FileSystemDirectoryHandle. The implementation of that +// function in this file will return an empty directory in the sandboxed file +// system. +// +// Another implementation of this function exists in +// file-system-access/local-fs-test-helpers.js, where that version uses the +// local file system instead. + +async function cleanupSandboxedFileSystem() { + const dir = await navigator.storage.getDirectory(); + for await (let entry of dir.values()) + await dir.removeEntry(entry.name, {recursive: entry.kind === 'directory'}); +} + +function directory_test(func, description) { + promise_test(async t => { + // To be extra resilient against bad tests, cleanup before every test. + await cleanupSandboxedFileSystem(); + + const dir = await navigator.storage.getDirectory(); + await func(t, dir); + }, description); +} |