| Index: packages/matcher/lib/src/numeric_matchers.dart
 | 
| diff --git a/packages/matcher/lib/src/numeric_matchers.dart b/packages/matcher/lib/src/numeric_matchers.dart
 | 
| index 770999d61c8de149e42e696962423308d765255c..e8651de0e7b44bcad0fc5aaeac92d4c3211865d1 100644
 | 
| --- a/packages/matcher/lib/src/numeric_matchers.dart
 | 
| +++ b/packages/matcher/lib/src/numeric_matchers.dart
 | 
| @@ -2,107 +2,8 @@
 | 
|  // for details. All rights reserved. Use of this source code is governed by a
 | 
|  // BSD-style license that can be found in the LICENSE file.
 | 
|  
 | 
| -library matcher.numeric_matchers;
 | 
| -
 | 
|  import 'interfaces.dart';
 | 
|  
 | 
| -/// Returns a matcher which matches if the match argument is greater
 | 
| -/// than the given [value].
 | 
| -Matcher greaterThan(value) =>
 | 
| -    new _OrderingComparison(value, false, false, true, 'a value greater than');
 | 
| -
 | 
| -/// Returns a matcher which matches if the match argument is greater
 | 
| -/// than or equal to the given [value].
 | 
| -Matcher greaterThanOrEqualTo(value) => new _OrderingComparison(
 | 
| -    value, true, false, true, 'a value greater than or equal to');
 | 
| -
 | 
| -/// Returns a matcher which matches if the match argument is less
 | 
| -/// than the given [value].
 | 
| -Matcher lessThan(value) =>
 | 
| -    new _OrderingComparison(value, false, true, false, 'a value less than');
 | 
| -
 | 
| -/// Returns a matcher which matches if the match argument is less
 | 
| -/// than or equal to the given [value].
 | 
| -Matcher lessThanOrEqualTo(value) => new _OrderingComparison(
 | 
| -    value, true, true, false, 'a value less than or equal to');
 | 
| -
 | 
| -/// A matcher which matches if the match argument is zero.
 | 
| -const Matcher isZero =
 | 
| -    const _OrderingComparison(0, true, false, false, 'a value equal to');
 | 
| -
 | 
| -/// A matcher which matches if the match argument is non-zero.
 | 
| -const Matcher isNonZero =
 | 
| -    const _OrderingComparison(0, false, true, true, 'a value not equal to');
 | 
| -
 | 
| -/// A matcher which matches if the match argument is positive.
 | 
| -const Matcher isPositive =
 | 
| -    const _OrderingComparison(0, false, false, true, 'a positive value', false);
 | 
| -
 | 
| -/// A matcher which matches if the match argument is zero or negative.
 | 
| -const Matcher isNonPositive = const _OrderingComparison(
 | 
| -    0, true, true, false, 'a non-positive value', false);
 | 
| -
 | 
| -/// A matcher which matches if the match argument is negative.
 | 
| -const Matcher isNegative =
 | 
| -    const _OrderingComparison(0, false, true, false, 'a negative value', false);
 | 
| -
 | 
| -/// A matcher which matches if the match argument is zero or positive.
 | 
| -const Matcher isNonNegative = const _OrderingComparison(
 | 
| -    0, true, false, true, 'a non-negative value', false);
 | 
| -
 | 
| -bool _isNumeric(value) {
 | 
| -  return value is num;
 | 
| -}
 | 
| -
 | 
| -// TODO(kevmoo) Note that matchers that use _OrderingComparison only use
 | 
| -// `==` and `<` operators to evaluate the match. Or change the matcher.
 | 
| -class _OrderingComparison extends Matcher {
 | 
| -  /// Expected value.
 | 
| -  final _value;
 | 
| -  /// What to return if actual == expected
 | 
| -  final bool _equalValue;
 | 
| -  /// What to return if actual < expected
 | 
| -  final bool _lessThanValue;
 | 
| -  /// What to return if actual > expected
 | 
| -  final bool _greaterThanValue;
 | 
| -  /// Textual name of the inequality
 | 
| -  final String _comparisonDescription;
 | 
| -  /// Whether to include the expected value in the description
 | 
| -  final bool _valueInDescription;
 | 
| -
 | 
| -  const _OrderingComparison(this._value, this._equalValue, this._lessThanValue,
 | 
| -      this._greaterThanValue, this._comparisonDescription,
 | 
| -      [bool valueInDescription = true])
 | 
| -      : this._valueInDescription = valueInDescription;
 | 
| -
 | 
| -  bool matches(item, Map matchState) {
 | 
| -    if (item == _value) {
 | 
| -      return _equalValue;
 | 
| -    } else if (item < _value) {
 | 
| -      return _lessThanValue;
 | 
| -    } else {
 | 
| -      return _greaterThanValue;
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  Description describe(Description description) {
 | 
| -    if (_valueInDescription) {
 | 
| -      return description
 | 
| -          .add(_comparisonDescription)
 | 
| -          .add(' ')
 | 
| -          .addDescriptionOf(_value);
 | 
| -    } else {
 | 
| -      return description.add(_comparisonDescription);
 | 
| -    }
 | 
| -  }
 | 
| -
 | 
| -  Description describeMismatch(
 | 
| -      item, Description mismatchDescription, Map matchState, bool verbose) {
 | 
| -    mismatchDescription.add('is not ');
 | 
| -    return describe(mismatchDescription);
 | 
| -  }
 | 
| -}
 | 
| -
 | 
|  /// Returns a matcher which matches if the match argument is within [delta]
 | 
|  /// of some [value].
 | 
|  ///
 | 
| @@ -116,9 +17,8 @@ class _IsCloseTo extends Matcher {
 | 
|    const _IsCloseTo(this._value, this._delta);
 | 
|  
 | 
|    bool matches(item, Map matchState) {
 | 
| -    if (!_isNumeric(item)) {
 | 
| -      return false;
 | 
| -    }
 | 
| +    if (item is! num) return false;
 | 
| +
 | 
|      var diff = item - _value;
 | 
|      if (diff < 0) diff = -diff;
 | 
|      return (diff <= _delta);
 | 
| @@ -185,18 +85,18 @@ class _InRange extends Matcher {
 | 
|      return true;
 | 
|    }
 | 
|  
 | 
| -  Description describe(Description description) => description.add(
 | 
| -      "be in range from "
 | 
| -      "$_low (${_lowMatchValue ? 'inclusive' : 'exclusive'}) to "
 | 
| -      "$_high (${_highMatchValue ? 'inclusive' : 'exclusive'})");
 | 
| +  Description describe(Description description) =>
 | 
| +      description.add("be in range from "
 | 
| +          "$_low (${_lowMatchValue ? 'inclusive' : 'exclusive'}) to "
 | 
| +          "$_high (${_highMatchValue ? 'inclusive' : 'exclusive'})");
 | 
|  
 | 
|    Description describeMismatch(
 | 
|        item, Description mismatchDescription, Map matchState, bool verbose) {
 | 
|      if (item is! num) {
 | 
|        return mismatchDescription.addDescriptionOf(item).add(' not numeric');
 | 
|      } else {
 | 
| -      return super.describeMismatch(
 | 
| -          item, mismatchDescription, matchState, verbose);
 | 
| +      return super
 | 
| +          .describeMismatch(item, mismatchDescription, matchState, verbose);
 | 
|      }
 | 
|    }
 | 
|  }
 | 
| 
 |