OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 // | 4 // |
5 // Dart test program for testing file I/O. | 5 // Dart test program for testing file I/O. |
6 | 6 |
7 import "package:expect/expect.dart"; | 7 import "package:expect/expect.dart"; |
8 import 'dart:async'; | 8 import 'dart:async'; |
9 import 'dart:io'; | 9 import 'dart:io'; |
10 import 'dart:isolate'; | 10 import 'dart:isolate'; |
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
145 }); | 145 }); |
146 | 146 |
147 // Immediate read should read 0 bytes. | 147 // Immediate read should read 0 bytes. |
148 input.listen( | 148 input.listen( |
149 (d) { | 149 (d) { |
150 for (int i = 0; i < d.length; ++i) { | 150 for (int i = 0; i < d.length; ++i) { |
151 Expect.equals(buffer[(i + position) % buffer.length], d[i]); | 151 Expect.equals(buffer[(i + position) % buffer.length], d[i]); |
152 } | 152 } |
153 position += d.length; | 153 position += d.length; |
154 }, | 154 }, |
155 onError: (e) { | 155 onError: (error) { |
156 print('Error on input in testReadWriteStreamLargeFile'); | 156 print('Error on input in testReadWriteStreamLargeFile'); |
157 print('with error $e'); | 157 print('with error $error'); |
158 throw e; | 158 var trace = getAttachedStackTrace(error); |
| 159 if (trace != null) print("StackTrace: $trace"); |
| 160 throw error; |
159 }, | 161 }, |
160 onDone: () { | 162 onDone: () { |
161 Expect.equals(expectedLength, position); | 163 Expect.equals(expectedLength, position); |
162 testPipe(file, buffer) | 164 testPipe(file, buffer) |
163 .then((_) => file.delete()) | 165 .then((_) => file.delete()) |
164 .then((_) { | 166 .then((_) { |
165 asyncTestDone('testReadWriteStreamLargeFile: main test'); | 167 asyncTestDone('testReadWriteStreamLargeFile: main test'); |
166 }) | 168 }) |
167 .catchError((e) { | 169 .catchError((e) { |
168 print('Exception while deleting ReadWriteStreamLargeFile file'); | 170 print('Exception while deleting ReadWriteStreamLargeFile file'); |
169 print('Exception $e'); | 171 print('Exception $e'); |
| 172 var trace = getAttachedStackTrace(e); |
| 173 if (trace != null) print("StackTrace: $trace"); |
170 }); | 174 }); |
171 }); | 175 }); |
172 }); | 176 }); |
173 } | 177 } |
174 | 178 |
175 static Future testPipe(File file, buffer) { | 179 static Future testPipe(File file, buffer) { |
176 String outputFilename = '${file.path}_copy'; | 180 String outputFilename = '${file.path}_copy'; |
177 File outputFile = new File(outputFilename); | 181 File outputFile = new File(outputFilename); |
178 var input = file.openRead(); | 182 var input = file.openRead(); |
179 var output = outputFile.openWrite(); | 183 var output = outputFile.openWrite(); |
(...skipping 1057 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1237 testDirectorySync(); | 1241 testDirectorySync(); |
1238 testWriteStringUtf8(); | 1242 testWriteStringUtf8(); |
1239 testWriteStringUtf8Sync(); | 1243 testWriteStringUtf8Sync(); |
1240 }); | 1244 }); |
1241 } | 1245 } |
1242 } | 1246 } |
1243 | 1247 |
1244 main() { | 1248 main() { |
1245 FileTest.testMain(); | 1249 FileTest.testMain(); |
1246 } | 1250 } |
OLD | NEW |