Sequence Matchers

Matchers of sequences.

contains_exactly

class hamcrest.library.collection.issequence_containinginorder.IsSequenceContainingInOrder(matchers)

Bases: hamcrest.core.base_matcher.BaseMatcher[Sequence[hamcrest.library.collection.issequence_containinginorder.T]]

describe_mismatch(item, mismatch_description)

Generates a description of why the matcher has not accepted the item.

The description will be part of a larger description of why a matching failed, so it should be concise.

This method assumes that matches(item) is False, but will not check this.

Parameters
Return type

None

describe_to(description)

Generates a description of the object.

The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.

Parameters

description (hamcrest.core.description.Description) – The description to be built or appended to.

Return type

None

matches(item, mismatch_description=None)

Evaluates the matcher for argument item.

If a mismatch is detected and argument mismatch_description is provided, it will generate a description of why the matcher has not accepted the item.

Parameters
Returns

True if item matches, otherwise False.

Return type

bool

hamcrest.library.collection.issequence_containinginorder.contains_exactly(match1[, match2[, ...]])

Matches if sequence’s elements satisfy a given list of matchers, in order.

Parameters
  • match1,... – A comma-separated list of matchers.

  • items (Union[hamcrest.core.matcher.Matcher[hamcrest.library.collection.issequence_containinginorder.T], hamcrest.library.collection.issequence_containinginorder.T]) –

Return type

hamcrest.core.matcher.Matcher[Sequence[hamcrest.library.collection.issequence_containinginorder.T]]

This matcher iterates the evaluated sequence and a given list of matchers, seeing if each element satisfies its corresponding matcher.

Any argument that is not a matcher is implicitly wrapped in an equal_to matcher to check for equality.

contains_inanyorder

class hamcrest.library.collection.issequence_containinginanyorder.IsSequenceContainingInAnyOrder(matchers)

Bases: hamcrest.core.base_matcher.BaseMatcher[Sequence[hamcrest.library.collection.issequence_containinginanyorder.T]]

describe_mismatch(item, mismatch_description)

Generates a description of why the matcher has not accepted the item.

The description will be part of a larger description of why a matching failed, so it should be concise.

This method assumes that matches(item) is False, but will not check this.

Parameters
Return type

None

describe_to(description)

Generates a description of the object.

The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.

Parameters

description (hamcrest.core.description.Description) – The description to be built or appended to.

Return type

None

matches(item, mismatch_description=None)

Evaluates the matcher for argument item.

If a mismatch is detected and argument mismatch_description is provided, it will generate a description of why the matcher has not accepted the item.

Parameters
Returns

True if item matches, otherwise False.

Return type

bool

hamcrest.library.collection.issequence_containinginanyorder.contains_inanyorder(match1[, match2[, ...]])

Matches if sequences’s elements, in any order, satisfy a given list of matchers.

Parameters
  • match1,... – A comma-separated list of matchers.

  • items (Union[hamcrest.core.matcher.Matcher[hamcrest.library.collection.issequence_containinginanyorder.T], hamcrest.library.collection.issequence_containinginanyorder.T]) –

Return type

hamcrest.core.matcher.Matcher[Sequence[hamcrest.library.collection.issequence_containinginanyorder.T]]

This matcher iterates the evaluated sequence, seeing if each element satisfies any of the given matchers. The matchers are tried from left to right, and when a satisfied matcher is found, it is no longer a candidate for the remaining elements. If a one-to-one correspondence is established between elements and matchers, contains_inanyorder is satisfied.

Any argument that is not a matcher is implicitly wrapped in an equal_to matcher to check for equality.

has_item, has_items

class hamcrest.library.collection.issequence_containing.IsSequenceContaining(element_matcher)

Bases: hamcrest.core.base_matcher.BaseMatcher[Sequence[hamcrest.library.collection.issequence_containing.T]]

describe_to(description)

Generates a description of the object.

The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.

Parameters

description (hamcrest.core.description.Description) – The description to be built or appended to.

Return type

None

class hamcrest.library.collection.issequence_containing.IsSequenceContainingEvery(*element_matchers)

Bases: hamcrest.core.base_matcher.BaseMatcher[Sequence[hamcrest.library.collection.issequence_containing.T]]

describe_mismatch(item, mismatch_description)

Generates a description of why the matcher has not accepted the item.

The description will be part of a larger description of why a matching failed, so it should be concise.

This method assumes that matches(item) is False, but will not check this.

Parameters
Return type

None

describe_to(description)

Generates a description of the object.

The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.

Parameters

description (hamcrest.core.description.Description) – The description to be built or appended to.

Return type

None

hamcrest.library.collection.issequence_containing.has_item(match)

Matches if any element of sequence satisfies a given matcher.

Parameters

match (Union[hamcrest.core.matcher.Matcher[hamcrest.library.collection.issequence_containing.T], hamcrest.library.collection.issequence_containing.T]) – The matcher to satisfy, or an expected value for equal_to matching.

Return type

hamcrest.core.matcher.Matcher[Sequence[hamcrest.library.collection.issequence_containing.T]]

This matcher iterates the evaluated sequence, searching for any element that satisfies a given matcher. If a matching element is found, has_item is satisfied.

If the match argument is not a matcher, it is implicitly wrapped in an equal_to matcher to check for equality.

hamcrest.library.collection.issequence_containing.has_items(match1[, match2[, ...]])

Matches if all of the given matchers are satisfied by any elements of the sequence.

Parameters
  • match1,... – A comma-separated list of matchers.

  • items (Union[hamcrest.core.matcher.Matcher[hamcrest.library.collection.issequence_containing.T], hamcrest.library.collection.issequence_containing.T]) –

Return type

hamcrest.core.matcher.Matcher[Sequence[hamcrest.library.collection.issequence_containing.T]]

This matcher iterates the given matchers, searching for any elements in the evaluated sequence that satisfy them. If each matcher is satisfied, then has_items is satisfied.

Any argument that is not a matcher is implicitly wrapped in an equal_to matcher to check for equality.

is_in

class hamcrest.library.collection.isin.IsIn(sequence)

Bases: hamcrest.core.base_matcher.BaseMatcher[hamcrest.library.collection.isin.T]

describe_to(description)

Generates a description of the object.

The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.

Parameters

description (hamcrest.core.description.Description) – The description to be built or appended to.

Return type

None

hamcrest.library.collection.isin.is_in(sequence)

Matches if evaluated object is present in a given sequence.

Parameters

sequence (Sequence[hamcrest.library.collection.isin.T]) – The sequence to search.

Return type

hamcrest.core.matcher.Matcher[hamcrest.library.collection.isin.T]

This matcher invokes the in membership operator to determine if the evaluated object is a member of the sequence.

only_contains

class hamcrest.library.collection.issequence_onlycontaining.IsSequenceOnlyContaining(matcher)

Bases: hamcrest.core.base_matcher.BaseMatcher[Sequence[hamcrest.library.collection.issequence_onlycontaining.T]]

describe_to(description)

Generates a description of the object.

The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.

Parameters

description (hamcrest.core.description.Description) – The description to be built or appended to.

Return type

None

hamcrest.library.collection.issequence_onlycontaining.only_contains(match1[, match2[, ...]])

Matches if each element of sequence satisfies any of the given matchers.

Parameters
  • match1,... – A comma-separated list of matchers.

  • items (Union[hamcrest.core.matcher.Matcher[hamcrest.library.collection.issequence_onlycontaining.T], hamcrest.library.collection.issequence_onlycontaining.T]) –

Return type

hamcrest.core.matcher.Matcher[Sequence[hamcrest.library.collection.issequence_onlycontaining.T]]

This matcher iterates the evaluated sequence, confirming whether each element satisfies any of the given matchers.

Example:

only_contains(less_than(4))

will match [3,1,2].

Any argument that is not a matcher is implicitly wrapped in an equal_to matcher to check for equality.

empty

class hamcrest.library.collection.is_empty.IsEmpty(*args, **kwds)

Bases: hamcrest.core.base_matcher.BaseMatcher[Sized]

describe_to(description)

Generates a description of the object.

The description may be part of a description of a larger object of which this is just a component, so it should be worded appropriately.

Parameters

description (hamcrest.core.description.Description) – The description to be built or appended to.

Return type

None

matches(item, mismatch_description=None)

Evaluates the matcher for argument item.

If a mismatch is detected and argument mismatch_description is provided, it will generate a description of why the matcher has not accepted the item.

Parameters
Returns

True if item matches, otherwise False.

Return type

bool

hamcrest.library.collection.is_empty.empty()

This matcher matches any collection-like object that responds to the __len__ method, and has a length of 0.

Return type

hamcrest.core.matcher.Matcher[Sized]