OLD | NEW |
1 library fileapi; | 1 library fileapi; |
2 import '../../pkg/unittest/lib/unittest.dart'; | 2 import '../../pkg/unittest/lib/unittest.dart'; |
3 import '../../pkg/unittest/lib/html_config.dart'; | 3 import '../../pkg/unittest/lib/html_individual_config.dart'; |
4 import 'dart:html'; | 4 import 'dart:html'; |
5 | 5 |
6 void fail(message) { | 6 void fail(message) { |
7 guardAsync(() { | 7 guardAsync(() { |
8 expect(false, isTrue, reason: message); | 8 expect(false, isTrue, reason: message); |
9 }); | 9 }); |
10 } | 10 } |
11 | 11 |
12 FileSystem fs; | 12 FileSystem fs; |
13 | 13 |
14 main() { | 14 main() { |
15 useHtmlConfiguration(); | 15 useHtmlIndividualConfiguration(); |
16 test('getFileSystem', () { | |
17 window.webkitRequestFileSystem(Window.TEMPORARY, 100, expectAsync1( | |
18 (FileSystem fileSystem) { | |
19 fs = fileSystem; | |
20 }), | |
21 (e) { | |
22 fail('Got file error: ${e.code}'); | |
23 }); | |
24 }); | |
25 group('getDirectory', () { | |
26 | 16 |
27 test('directoryDoesntExist', () { | 17 group('supported', () { |
28 fs.root.getDirectory( | 18 test('supported', () { |
29 'directory2', | 19 expect(FileSystem.supported, true); |
30 options: {}, | |
31 successCallback: (e) { | |
32 fail('Should not be reached'); | |
33 }, | |
34 errorCallback: expectAsync1((FileError e) { | |
35 expect(e.code, equals(FileError.NOT_FOUND_ERR)); | |
36 })); | |
37 }); | |
38 | |
39 test('directoryCreate', () { | |
40 fs.root.getDirectory( | |
41 'directory3', | |
42 options: {'create': true}, | |
43 successCallback: expectAsync1((DirectoryEntry e) { | |
44 expect(e.name, equals('directory3')); | |
45 }), | |
46 errorCallback: (e) { | |
47 fail('Got file error: ${e.code}'); | |
48 }); | |
49 }); | 20 }); |
50 }); | 21 }); |
51 | 22 |
| 23 getFileSystem() { |
| 24 window.requestFileSystem(Window.TEMPORARY, 100, |
| 25 expectAsync1((FileSystem fileSystem) { |
| 26 fs = fileSystem; |
| 27 }), |
| 28 (e) { |
| 29 fail('Got file error: ${e.code}'); |
| 30 }); |
| 31 } |
| 32 |
| 33 group('fileSystem', () { |
| 34 test('getFileSystem', () { |
| 35 var expectation = FileSystem.supported ? returnsNormally : throws; |
| 36 expect(() { |
| 37 getFileSystem(); |
| 38 }, expectation); |
| 39 }); |
| 40 }); |
| 41 |
| 42 group('getDirectory', () { |
| 43 if (FileSystem.supported) { |
| 44 test('getFileSystem', getFileSystem); |
| 45 |
| 46 test('directoryDoesntExist', () { |
| 47 fs.root.getDirectory( |
| 48 'directory2', |
| 49 options: {}, |
| 50 successCallback: (e) { |
| 51 fail('Should not be reached'); |
| 52 }, |
| 53 errorCallback: expectAsync1((FileError e) { |
| 54 expect(e.code, equals(FileError.NOT_FOUND_ERR)); |
| 55 })); |
| 56 }); |
| 57 |
| 58 test('directoryCreate', () { |
| 59 fs.root.getDirectory( |
| 60 'directory3', |
| 61 options: {'create': true}, |
| 62 successCallback: expectAsync1((DirectoryEntry e) { |
| 63 expect(e.name, equals('directory3')); |
| 64 }), |
| 65 errorCallback: (e) { |
| 66 fail('Got file error: ${e.code}'); |
| 67 }); |
| 68 }); |
| 69 } |
| 70 }); |
| 71 |
52 group('getFile', () { | 72 group('getFile', () { |
| 73 if (FileSystem.supported) { |
| 74 test('getFileSystem', getFileSystem); |
53 | 75 |
54 test('fileDoesntExist', () { | 76 test('fileDoesntExist', () { |
55 fs.root.getFile( | 77 fs.root.getFile( |
56 'file2', | 78 'file2', |
57 options: {}, | 79 options: {}, |
58 successCallback: (e) { | 80 successCallback: (e) { |
59 fail('Should not be reached'); | 81 fail('Should not be reached'); |
60 }, | 82 }, |
61 errorCallback: expectAsync1((FileError e) { | 83 errorCallback: expectAsync1((FileError e) { |
62 expect(e.code, equals(FileError.NOT_FOUND_ERR)); | 84 expect(e.code, equals(FileError.NOT_FOUND_ERR)); |
63 })); | 85 })); |
64 }); | 86 }); |
65 | 87 |
66 test('fileCreate', () { | 88 test('fileCreate', () { |
67 fs.root.getFile( | 89 fs.root.getFile( |
68 'file4', | 90 'file4', |
69 options: {'create': true}, | 91 options: {'create': true}, |
70 successCallback: expectAsync1((FileEntry e) { | 92 successCallback: expectAsync1((FileEntry e) { |
71 expect(e.name, equals('file4')); | 93 expect(e.name, equals('file4')); |
72 expect(e.isFile, isTrue); | 94 expect(e.isFile, isTrue); |
73 }), | 95 }), |
74 errorCallback: (e) { | 96 errorCallback: (e) { |
75 fail('Got file error: ${e.code}'); | 97 fail('Got file error: ${e.code}'); |
76 }); | 98 }); |
77 }); | 99 }); |
| 100 } |
78 }); | 101 }); |
79 } | 102 } |
OLD | NEW |