OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, 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 /// The mirror matchers library provides some additional matchers that | 5 /// The mirror matchers library provides some additional matchers that |
6 /// make use of `dart:mirrors`. | 6 /// make use of `dart:mirrors`. |
7 library matcher.mirror_matchers; | |
8 | |
9 import 'dart:mirrors'; | 7 import 'dart:mirrors'; |
10 | 8 |
11 import 'matcher.dart'; | 9 import 'matcher.dart'; |
12 | 10 |
13 /// Returns a matcher that checks if a class instance has a property | 11 /// Returns a matcher that checks if a class instance has a property |
14 /// with name [name], and optionally, if that property in turn satisfies | 12 /// with name [name], and optionally, if that property in turn satisfies |
15 /// a [matcher]. | 13 /// a [matcher]. |
16 Matcher hasProperty(String name, [matcher]) => | 14 Matcher hasProperty(String name, [matcher]) => |
17 new _HasProperty(name, matcher == null ? null : wrapMatcher(matcher)); | 15 new _HasProperty(name, matcher == null ? null : wrapMatcher(matcher)); |
18 | 16 |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 var innerDescription = new StringDescription(); | 68 var innerDescription = new StringDescription(); |
71 _matcher.describeMismatch( | 69 _matcher.describeMismatch( |
72 matchState['value'], innerDescription, matchState['state'], verbose); | 70 matchState['value'], innerDescription, matchState['state'], verbose); |
73 if (innerDescription.length > 0) { | 71 if (innerDescription.length > 0) { |
74 mismatchDescription.add(' which ').add(innerDescription.toString()); | 72 mismatchDescription.add(' which ').add(innerDescription.toString()); |
75 } | 73 } |
76 } | 74 } |
77 return mismatchDescription; | 75 return mismatchDescription; |
78 } | 76 } |
79 } | 77 } |
OLD | NEW |