Files
sdk/tests/lib/html/fileapi_file_test.dart
T
Lasse Reichstein Holst Nielsen 765c9c3a8e Make tests not assume catch(e) gives e type dynamic.
See #41558

Bug: http://dartbug.com/41558
Change-Id: I8980ad6e0d240c917f36ec4f9fcf2091fb61a4b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/143819
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
2020-05-05 09:57:23 +00:00

52 lines
1.3 KiB
Dart

// 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.
library fileapi;
import 'dart:async';
import 'dart:html';
import 'package:async_helper/async_helper.dart';
import 'package:async_helper/async_minitest.dart';
class FileAndDir {
FileEntry file;
DirectoryEntry dir;
FileAndDir(this.file, this.dir);
}
late FileSystem fs;
main() async {
getFileSystem() async {
fs = await window.requestFileSystem(100);
}
if (FileSystem.supported) {
await getFileSystem();
test('fileDoesntExist', () async {
try {
var fileObj = await fs.root.getFile('file2');
fail("file found");
} on DomException catch (error) {
expect(DomException.NOT_FOUND, error.name);
}
});
test('fileCreate', () async {
var fileObj = await fs.root.createFile('file4');
expect(fileObj.name, equals('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));
});
}
}