| 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 library matcher.test_common; |   5 library matcher.test_common; | 
|   6  |   6  | 
|   7 import 'dart:collection'; |   7 import 'dart:collection'; | 
|   8  |   8  | 
|   9 import 'package:matcher/matcher.dart'; |   9 import 'package:matcher/matcher.dart'; | 
|  10  |  10  | 
|  11 class Widget { |  11 class Widget { | 
|  12   int price; |  12   int price; | 
|  13 } |  13 } | 
|  14  |  14  | 
|  15 class HasPrice extends CustomMatcher { |  15 class HasPrice extends CustomMatcher { | 
|  16   HasPrice(matcher) : super("Widget with a price that is", "price", matcher); |  16   HasPrice(matcher) : | 
 |  17     super("Widget with a price that is", "price", matcher); | 
|  17   featureValueOf(actual) => actual.price; |  18   featureValueOf(actual) => actual.price; | 
|  18 } |  19 } | 
|  19  |  20  | 
|  20 class SimpleIterable extends IterableBase<int> { |  21 class SimpleIterable extends IterableBase { | 
|  21   final int count; |  22   int count; | 
|  22  |  | 
|  23   SimpleIterable(this.count); |  23   SimpleIterable(this.count); | 
|  24  |  24  | 
|  25   bool contains(int val) => count < val ? false : true; |  25   bool contains(int val) => count < val ? false : true; | 
|  26  |  26  | 
|  27   bool any(bool f(element)) { |  27   bool any(bool f(element)) { | 
|  28     for (var i = 0; i <= count; i++) { |  28     for (var i = 0; i <= count; i++) { | 
|  29       if (f(i)) return true; |  29       if (f(i)) return true; | 
|  30     } |  30     } | 
|  31     return false; |  31     return false; | 
|  32   } |  32   } | 
|  33  |  33  | 
|  34   String toString() => "<[$count]>"; |  34   String toString() => "<[$count]>"; | 
|  35  |  35  | 
|  36   Iterator get iterator { |  36   Iterator get iterator { | 
|  37     return new _SimpleIterator(count); |  37     return new SimpleIterator(count); | 
|  38   } |  38   } | 
|  39 } |  39 } | 
|  40  |  40  | 
|  41 class _SimpleIterator implements Iterator<int> { |  41 class SimpleIterator implements Iterator { | 
|  42   int _count; |  42   int _count; | 
|  43   int _current; |  43   int _current; | 
|  44  |  44  | 
|  45   _SimpleIterator(this._count); |  45   SimpleIterator(this._count); | 
|  46  |  46  | 
|  47   bool moveNext() { |  47   bool moveNext() { | 
|  48     if (_count > 0) { |  48     if (_count > 0) { | 
|  49       _current = _count; |  49       _current = _count; | 
|  50       _count--; |  50       _count--; | 
|  51       return true; |  51       return true; | 
|  52     } |  52     } | 
|  53     _current = null; |  53     _current = null; | 
|  54     return false; |  54     return false; | 
|  55   } |  55   } | 
|  56  |  56  | 
|  57   int get current => _current; |  57   get current => _current; | 
|  58 } |  58 } | 
|  59  |  59  | 
| OLD | NEW |