Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(700)

Side by Side Diff: packages/quiver/test/io_test.dart

Issue 2989763002: Update charted to 0.4.8 and roll (Closed)
Patch Set: Removed Cutch from list of reviewers Created 3 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2013 Google Inc. All Rights Reserved. 1 // Copyright 2013 Google Inc. All Rights Reserved.
2 // 2 //
3 // Licensed under the Apache License, Version 2.0 (the "License"); 3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License. 4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at 5 // You may obtain a copy of the License at
6 // 6 //
7 // http://www.apache.org/licenses/LICENSE-2.0 7 // http://www.apache.org/licenses/LICENSE-2.0
8 // 8 //
9 // Unless required by applicable law or agreed to in writing, software 9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS, 10 // distributed under the License is distributed on an "AS IS" BASIS,
(...skipping 10 matching lines...) Expand all
21 import 'package:path/path.dart' as path; 21 import 'package:path/path.dart' as path;
22 import 'package:quiver/io.dart'; 22 import 'package:quiver/io.dart';
23 import 'package:test/test.dart'; 23 import 'package:test/test.dart';
24 24
25 main() { 25 main() {
26 group('byteStreamToString', () { 26 group('byteStreamToString', () {
27 test('should decode UTF8 text by default', () { 27 test('should decode UTF8 text by default', () {
28 var string = '箙、靫'; 28 var string = '箙、靫';
29 var encoded = UTF8.encoder.convert(string); 29 var encoded = UTF8.encoder.convert(string);
30 var data = [encoded.sublist(0, 3), encoded.sublist(3)]; 30 var data = [encoded.sublist(0, 3), encoded.sublist(3)];
31 var stream = new Stream.fromIterable(data); 31 var stream = new Stream<List<int>>.fromIterable(data);
32 byteStreamToString(stream).then((decoded) { 32 byteStreamToString(stream).then((decoded) {
33 expect(decoded, string); 33 expect(decoded, string);
34 }); 34 });
35 }); 35 });
36 36
37 test('should decode text with the specified encoding', () { 37 test('should decode text with the specified encoding', () {
38 var string = 'blåbærgrød'; 38 var string = 'blåbærgrød';
39 var encoded = LATIN1.encoder.convert(string); 39 var encoded = LATIN1.encoder.convert(string);
40 var data = [encoded.sublist(0, 4), encoded.sublist(4)]; 40 var data = [encoded.sublist(0, 4), encoded.sublist(4)];
41 var stream = new Stream.fromIterable(data); 41 var stream = new Stream<List<int>>.fromIterable(data);
42 byteStreamToString(stream, encoding: LATIN1).then((decoded) { 42 byteStreamToString(stream, encoding: LATIN1).then((decoded) {
43 expect(decoded, string); 43 expect(decoded, string);
44 }); 44 });
45 }); 45 });
46 }); 46 });
47 47
48 group('visitDirectory', () { 48 group('visitDirectory', () {
49 var testPath; 49 var testPath;
50 var testDir; 50 var testDir;
51 51
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 new Directory(path.join(testPath, 'dir')).createSync(); 107 new Directory(path.join(testPath, 'dir')).createSync();
108 new File(path.join(testPath, 'dir/file')).createSync(); 108 new File(path.join(testPath, 'dir/file')).createSync();
109 new Directory(path.join(testPath, 'dir2')).createSync(); 109 new Directory(path.join(testPath, 'dir2')).createSync();
110 new File(path.join(testPath, 'dir2/file')).createSync(); 110 new File(path.join(testPath, 'dir2/file')).createSync();
111 111
112 var files = []; 112 var files = [];
113 return visitDirectory(testDir, (e) { 113 return visitDirectory(testDir, (e) {
114 files.add(e); 114 files.add(e);
115 return new Future.value(!e.path.endsWith('dir2')); 115 return new Future.value(!e.path.endsWith('dir2'));
116 }).then((_) { 116 }).then((_) {
117 expect(files.map((e) => e.path), unorderedEquals( 117 expect(
118 ["$testPath/dir", "$testPath/dir/file", "$testPath/dir2",])); 118 files.map((e) => e.path),
119 unorderedEquals([
120 "$testPath/dir",
121 "$testPath/dir/file",
122 "$testPath/dir2",
123 ]));
119 }); 124 });
120 }); 125 });
121 126
122 test('should not infinitely recurse on symlink cycles', () { 127 test('should not infinitely recurse on symlink cycles', () {
123 var dir = new Directory(path.join(testPath, 'dir'))..createSync(); 128 var dir = new Directory(path.join(testPath, 'dir'))..createSync();
124 new Link(path.join(testPath, 'dir/link')).createSync('../dir'); 129 new Link(path.join(testPath, 'dir/link')).createSync('../dir');
125 var files = []; 130 var files = [];
126 return visitDirectory(dir, (e) { 131 return visitDirectory(dir, (e) {
127 files.add(e); 132 files.add(e);
128 return new Future.value(true); 133 return new Future.value(true);
129 }).then((_) { 134 }).then((_) {
130 expect(files.length, 1); 135 expect(files.length, 1);
131 expect(files.first.targetSync(), '../dir'); 136 expect(files.first.targetSync(), '../dir');
132 }); 137 });
133 }); 138 });
134 }); 139 });
135 } 140 }
OLDNEW
« no previous file with comments | « packages/quiver/test/core/optional_test.dart ('k') | packages/quiver/test/iterables/concat_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698