OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 part of unittest.matcher; | 5 part of unittest.matcher; |
6 | 6 |
7 /** | 7 /** |
8 * This returns a matcher that inverts [matcher] to its logical negation. | 8 * This returns a matcher that inverts [matcher] to its logical negation. |
9 */ | 9 */ |
10 Matcher isNot(matcher) => new _IsNot(wrapMatcher(matcher)); | 10 Matcher isNot(matcher) => new _IsNot(wrapMatcher(matcher)); |
11 | 11 |
12 class _IsNot extends Matcher { | 12 class _IsNot extends Matcher { |
13 final Matcher _matcher; | 13 final Matcher _matcher; |
14 | 14 |
15 const _IsNot(Matcher this._matcher); | 15 const _IsNot(Matcher this._matcher); |
16 | 16 |
17 bool matches(item, Map matchState) => | 17 bool matches(item, Map matchState) => !_matcher.matches(item, matchState); |
18 !_matcher.matches(item, matchState); | |
19 | 18 |
20 Description describe(Description description) => | 19 Description describe(Description description) => |
21 description.add('not ').addDescriptionOf(_matcher); | 20 description.add('not ').addDescriptionOf(_matcher); |
22 } | 21 } |
23 | 22 |
24 /** | 23 /** |
25 * This returns a matcher that matches if all of the matchers passed as | 24 * This returns a matcher that matches if all of the matchers passed as |
26 * arguments (up to 7) match. Instead of passing the matchers separately | 25 * arguments (up to 7) match. Instead of passing the matchers separately |
27 * they can be passed as a single List argument. | 26 * they can be passed as a single List argument. |
28 * Any argument that is not a matcher is implicitly wrapped in a | 27 * Any argument that is not a matcher is implicitly wrapped in a |
(...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
168 return true; | 167 return true; |
169 } | 168 } |
170 } | 169 } |
171 return false; | 170 return false; |
172 } | 171 } |
173 | 172 |
174 Description describe(Description description) => | 173 Description describe(Description description) => |
175 description.addAll('(', ' or ', ')', _matchers); | 174 description.addAll('(', ' or ', ')', _matchers); |
176 } | 175 } |
177 | 176 |
OLD | NEW |