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 library unittestTest; | 5 library unittest.expect_async_args_test; |
6 | |
7 import 'dart:async'; | |
8 import 'dart:isolate'; | |
9 | 6 |
10 import 'package:unittest/unittest.dart'; | 7 import 'package:unittest/unittest.dart'; |
11 | 8 |
12 part 'utils.dart'; | 9 import 'package:metatest/metatest.dart'; |
13 | 10 |
14 var testFunction = (TestConfiguration testConfig) { | 11 void main() => initTests(_test); |
15 List<int> _getArgs([a = 0, b = 0, c = 0, d = 0, e = 0, f = 0]) { | |
16 testConfig.count++; | |
17 return [a, b, c, d, e, f]; | |
18 } | |
19 | 12 |
20 test('expect async args', () { | 13 void _test(message) { |
21 expect(expectAsync(_getArgs)(), [0, 0, 0, 0, 0, 0]); | 14 initMetatest(message); |
22 expect(expectAsync(_getArgs)(5), [5, 0, 0, 0, 0, 0]); | |
23 expect(expectAsync(_getArgs)(1, 2, 3, 4, 5, 6), [1, 2, 3, 4, 5, 6]); | |
24 }); | |
25 | 15 |
26 test('invoked with too many args', () { | 16 expectTestResults('expect async args', () { |
27 expectAsync(_getArgs)(1, 2, 3, 4, 5, 6, 7); | 17 var count = 0; |
28 }); | 18 List<int> _getArgs([a = 0, b = 0, c = 0, d = 0, e = 0, f = 0]) { |
| 19 count++; |
| 20 return [a, b, c, d, e, f]; |
| 21 } |
29 | 22 |
30 test('created with too many args', () { | 23 test('expect async args', () { |
31 expectAsync((a1, a2, a3, a4, a5, a6, a7) { | 24 expect(expectAsync(_getArgs)(), [0, 0, 0, 0, 0, 0]); |
32 testConfig.count++; | 25 expect(expectAsync(_getArgs)(5), [5, 0, 0, 0, 0, 0]); |
33 })(); | 26 expect(expectAsync(_getArgs)(1, 2, 3, 4, 5, 6), [1, 2, 3, 4, 5, 6]); |
34 }); | 27 }); |
35 }; | |
36 | 28 |
37 final expected = startsWith('1:0:2:3:3:::null:expect async args::' | 29 test('invoked with too many args', () { |
38 'invoked with too many args:Test failed:'); | 30 expectAsync(_getArgs)(1, 2, 3, 4, 5, 6, 7); |
| 31 }); |
| 32 |
| 33 test('created with too many args', () { |
| 34 expectAsync((a1, a2, a3, a4, a5, a6, a7) { |
| 35 count++; |
| 36 })(); |
| 37 }); |
| 38 |
| 39 test('verify count', () { |
| 40 expect(count, 3); |
| 41 }); |
| 42 }, [{ |
| 43 'description': 'expect async args', |
| 44 'result': 'pass', |
| 45 }, { |
| 46 'description': 'invoked with too many args', |
| 47 'result': 'error', |
| 48 }, { |
| 49 'description': 'created with too many args', |
| 50 'result': 'error', |
| 51 }, { |
| 52 'description': 'verify count', |
| 53 'result': 'pass', |
| 54 }]); |
| 55 } |
OLD | NEW |