mirror of
https://github.com/servo/servo.git
synced 2025-10-16 08:20:22 +01:00
28 lines
975 B
JavaScript
28 lines
975 B
JavaScript
// 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.
|
|
|
|
function getFileSystemType() {
|
|
return 'sandboxed';
|
|
}
|
|
|
|
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);
|
|
}
|