OLD | NEW |
| (Empty) |
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 | |
3 // BSD-style license that can be found in the LICENSE file. | |
4 | |
5 library unittest.protect_async_test; | |
6 | |
7 import 'dart:async'; | |
8 | |
9 import 'package:unittest/unittest.dart'; | |
10 | |
11 import 'package:metatest/metatest.dart'; | |
12 | |
13 void main() => initTests(_test); | |
14 | |
15 void _test(message) { | |
16 initMetatest(message); | |
17 | |
18 expectTestResults('protectAsync', () { | |
19 test('protectAsync0', () { | |
20 var protected = () { | |
21 throw new StateError('error during protectAsync0'); | |
22 }; | |
23 new Future(protected); | |
24 }); | |
25 | |
26 test('protectAsync1', () { | |
27 var protected = (arg) { | |
28 throw new StateError('error during protectAsync1: $arg'); | |
29 }; | |
30 new Future(() => protected('one arg')); | |
31 }); | |
32 | |
33 test('protectAsync2', () { | |
34 var protected = (arg1, arg2) { | |
35 throw new StateError('error during protectAsync2: $arg1, $arg2'); | |
36 }; | |
37 new Future(() => protected('arg1', 'arg2')); | |
38 }); | |
39 | |
40 test('throw away 1', () { | |
41 return new Future(() {}); | |
42 }); | |
43 }, [{ | |
44 'result': 'error', | |
45 'message': 'Caught Bad state: error during protectAsync0' | |
46 }, { | |
47 'result': 'error', | |
48 'message': 'Caught Bad state: error during protectAsync1: one arg' | |
49 }, { | |
50 'result': 'error', | |
51 'message': 'Caught Bad state: error during protectAsync2: arg1, arg2' | |
52 }, { | |
53 'result': 'pass', | |
54 'message': '' | |
55 }]); | |
56 } | |
OLD | NEW |