struct Spectator::Matchers::ArrayMatcher(ExpectedType)
Overview
Matcher for checking that the contents of one array (or similar type) has the exact same contents as another but may be in any order.
Defined in:
spectator/matchers/array_matcher.crConstructors
-
.new(expected : Value(Array(ExpectedType)))
Creates the matcher with an expected value.
Instance Method Summary
-
#description : String
Short text about the matcher's purpose.
-
#in_any_order
Specifies that the arrays elements can be compared in any order.
-
#in_order
Ensures the arrays elements are compared in order.
-
#match(actual : Expression(T)) : MatchData forall T
Actually performs the test against the expression.
-
#negated_match(actual : Expression(T)) : MatchData forall T
Performs the test against the expression, but inverted.
Instance methods inherited from struct Spectator::Matchers::Matcher
===(actual : Expression(T)) : Bool===(other) : Bool ===, description : String description, initialize initialize, match(actual : Expression(T)) : MatchData forall T match, negated_match(actual : Expression(T)) : MatchData forall T negated_match
Constructor methods inherited from struct Spectator::Matchers::Matcher
new
new
Instance methods inherited from class Object
should(matcher : Spectator::Matchers::TypeMatcher(U), message = nil, *, _file = __FILE__, _line = __LINE__) forall Ushould(matcher, message = nil, *, _file = __FILE__, _line = __LINE__) should, should_eventually(matcher, message = nil, *, _file = __FILE__, _line = __LINE__) should_eventually, should_never(matcher, message = nil, *, _file = __FILE__, _line = __LINE__) should_never, should_not(matcher : Spectator::Matchers::TypeMatcher(U), message = nil, *, _file = __FILE__, _line = __LINE__) forall U
should_not(matcher : Spectator::Matchers::NilMatcher, message = nil, *, _file = __FILE__, _line = __LINE__)
should_not(matcher, message = nil, *, _file = __FILE__, _line = __LINE__) should_not
Constructor Detail
Creates the matcher with an expected value.
Instance Method Detail
Short text about the matcher's purpose. This explains what condition satisfies the matcher. The description is used when the one-liner syntax is used.
Specifies that the arrays elements can be compared in any order. The elements can be in a different order, but both arrays must have the same elements.
Ensures the arrays elements are compared in order. This is the default behavior for the matcher.
Actually performs the test against the expression.
Performs the test against the expression, but inverted.
A successful match with #match
should normally fail for this method, and vice-versa.