// Copyright (c) 2020, the Dart project authors. Please see the AUTHORS file // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. import 'dart:html'; import 'package:expect/legacy/async_minitest.dart'; // ignore: deprecated_member_use main() { if (!FileSystem.supported) return; // Prepend this file name to prevent collisions among tests running on the // same browser. const prefix = 'fileapi_file_'; test('fileDoesntExist', () async { final fs = await window.requestFileSystem(100); try { await fs.root!.getFile('${prefix}file2'); fail("file found"); } on DomException catch (error) { expect(DomException.NOT_FOUND, error.name); } }); test('fileCreate', () async { final fs = await window.requestFileSystem(100); var fileObj = await fs.root!.createFile('${prefix}file4'); expect(fileObj.name, equals('${prefix}file4')); expect(fileObj.isFile, isTrue); var metadata = await fileObj.getMetadata(); var changeTime = metadata.modificationTime; // Increased Windows buildbots can sometimes be particularly slow. expect(new DateTime.now().difference(changeTime).inMinutes < 4, isTrue); expect(metadata.size, equals(0)); }); }