struct Spectator::Matchers::AllMatcher(TMatcher)

Overview

Matcher that checks if all elements of a collection apply to some other matcher.

Defined in:

spectator/matchers/all_matcher.cr

Constructors

Instance Method Summary

Instance methods inherited from struct Spectator::Matchers::Matcher

description : String description, 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, message = nil) should, should_eventually(matcher, message = nil) should_eventually, should_never(matcher, message = nil) should_never, should_not(matcher, message = nil) should_not

Constructor Detail

def self.new(matcher : TMatcher) #

Creates the matcher with an expected successful matcher.


[View source]

Instance Method Detail

def description : String #

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.


[View source]
def match(actual : Expression(T)) : MatchData forall T #

Actually performs the test against the expression.


[View source]
def negated_match(actual : Expression(T)) : MatchData forall T #

Negated matching for this matcher is not supported. Attempting to call this method will result in a compilation error.

This syntax has a logical problem. "All values do not satisfy some condition." Does this mean that all values don't satisfy the matcher? What if only one doesn't? What if the collection is empty?

RSpec doesn't support this syntax either.


[View source]