Dictionary Matchers¶
Matchers of dictionaries.
has_entries¶
-
class
hamcrest.library.collection.isdict_containingentries.
IsDictContainingEntries
(value_matchers)¶ Bases:
hamcrest.core.base_matcher.BaseMatcher
-
describe_keyvalue
(index, value, description)¶ Describes key-value pair at given index.
-
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)
isFalse
, but will not check this.Parameters: - item – The item that the
Matcher
has rejected. - mismatch_description – The description to be built or appended to.
- item – The item that the
-
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 – The description to be built or appended to.
-
matches
(dictionary, 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: item – The object against which the matcher is evaluated. Returns: True
ifitem
matches, otherwiseFalse
.
-
-
hamcrest.library.collection.isdict_containingentries.
has_entries
(matcher_dict)¶ Matches if dictionary contains entries satisfying a dictionary of keys and corresponding value matchers.
Parameters: matcher_dict – A dictionary mapping keys to associated value matchers, or to expected values for equal_to
matching.Note that the keys must be actual keys, not matchers. Any value argument that is not a matcher is implicitly wrapped in an
equal_to
matcher to check for equality.Examples:
has_entries({'foo':equal_to(1), 'bar':equal_to(2)}) has_entries({'foo':1, 'bar':2})
has_entries
also accepts a list of keyword arguments:-
hamcrest.library.collection.isdict_containingentries.
has_entries
(keyword1=value_matcher1[, keyword2=value_matcher2[, ...]])
Parameters: - keyword1 – A keyword to look up.
- valueMatcher1 – The matcher to satisfy for the value, or an expected
value for
equal_to
matching.
Examples:
has_entries(foo=equal_to(1), bar=equal_to(2)) has_entries(foo=1, bar=2)
Finally,
has_entries
also accepts a list of alternating keys and their value matchers:-
hamcrest.library.collection.isdict_containingentries.
has_entries
(key1, value_matcher1[, ...])
Parameters: - key1 – A key (not a matcher) to look up.
- valueMatcher1 – The matcher to satisfy for the value, or an expected
value for
equal_to
matching.
Examples:
has_entries('foo', equal_to(1), 'bar', equal_to(2)) has_entries('foo', 1, 'bar', 2)
-
has_entry¶
-
class
hamcrest.library.collection.isdict_containing.
IsDictContaining
(key_matcher, value_matcher)¶ Bases:
hamcrest.core.base_matcher.BaseMatcher
-
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 – The description to be built or appended to.
-
-
hamcrest.library.collection.isdict_containing.
has_entry
(key_match, value_match)¶ Matches if dictionary contains key-value entry satisfying a given pair of matchers.
Parameters: This matcher iterates the evaluated dictionary, searching for any key-value entry that satisfies
key_match
andvalue_match
. If a matching entry is found,has_entry
is satisfied.Any argument that is not a matcher is implicitly wrapped in an
equal_to
matcher to check for equality.Examples:
has_entry(equal_to('foo'), equal_to(1)) has_entry('foo', 1)
has_key¶
-
class
hamcrest.library.collection.isdict_containingkey.
IsDictContainingKey
(key_matcher)¶ Bases:
hamcrest.core.base_matcher.BaseMatcher
-
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 – The description to be built or appended to.
-
-
hamcrest.library.collection.isdict_containingkey.
has_key
(key_match)¶ Matches if dictionary contains an entry whose key satisfies a given matcher.
Parameters: key_match – The matcher to satisfy for the key, or an expected value for equal_to
matching.This matcher iterates the evaluated dictionary, searching for any key-value entry whose key satisfies the given matcher. If a matching entry is found,
has_key
is satisfied.Any argument that is not a matcher is implicitly wrapped in an
equal_to
matcher to check for equality.Examples:
has_key(equal_to('foo')) has_key('foo')
has_value¶
-
class
hamcrest.library.collection.isdict_containingvalue.
IsDictContainingValue
(value_matcher)¶ Bases:
hamcrest.core.base_matcher.BaseMatcher
-
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 – The description to be built or appended to.
-
-
hamcrest.library.collection.isdict_containingvalue.
has_value
(value)¶ Matches if dictionary contains an entry whose value satisfies a given matcher.
Parameters: value_match – The matcher to satisfy for the value, or an expected value for equal_to
matching.This matcher iterates the evaluated dictionary, searching for any key-value entry whose value satisfies the given matcher. If a matching entry is found,
has_value
is satisfied.Any argument that is not a matcher is implicitly wrapped in an
equal_to
matcher to check for equality.Examples:
has_value(equal_to('bar')) has_value('bar')