| Index: lib/unittest/matcher.dart
|
| ===================================================================
|
| --- lib/unittest/matcher.dart (revision 0)
|
| +++ lib/unittest/matcher.dart (revision 0)
|
| @@ -0,0 +1,36 @@
|
| +// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
|
| +// 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.
|
| +
|
| +/**
|
| + * BaseMatcher is the base class for all matchers. To implement a new
|
| + * matcher, either add a class that implements from IMatcher or
|
| + * a class that inherits from Matcher. Inheriting from Matcher has
|
| + * the benefit that a default implementation of describeMismatch will
|
| + * be provided.
|
| + */
|
| +
|
| +class BaseMatcher implements Matcher {
|
| + const BaseMatcher();
|
| +
|
| + /**
|
| + * Tests the matcher against a given [item]
|
| + * and return true if the match succeeds; false otherwise.
|
| + */
|
| + abstract bool matches(item);
|
| +
|
| + /**
|
| + * Creates a textual description of a matcher,
|
| + * by appending to [mismatchDescription].
|
| + */
|
| + abstract Description describe(Description mismatchDescription);
|
| +
|
| + /**
|
| + * Generates a description of the matcher failed for a particular
|
| + * [item], by appending the description to [mismatchDescription].
|
| + * It does not check whether the [item] fails the match, as it is
|
| + * only called after a failed match.
|
| + */
|
| + Description describeMismatch(item, Description mismatchDescription) =>
|
| + mismatchDescription.add('was ').addDescriptionOf(item);
|
| +}
|
|
|