Skip to content

WIP: fakeldap.py: Don't rely on KeyError exceptions when accessing non-exi… - #18

Open
sunweaver wants to merge 1 commit into
zulip:mainfrom
sunweaver:pr/directory-defaultdict-always-contains-empty-dict
Open

WIP: fakeldap.py: Don't rely on KeyError exceptions when accessing non-exi…#18
sunweaver wants to merge 1 commit into
zulip:mainfrom
sunweaver:pr/directory-defaultdict-always-contains-empty-dict

Conversation

@sunweaver

Copy link
Copy Markdown
Contributor

…stent keys of MockLDAP.directory.

The implementation of the internal MockLDAP.directory dictionary is
defined via
.
self.directory = defaultdict(lambda: {})
.
This results in a dictionary that always returns an empty dict for any
key requested:
.
>>> print (self.directory['some_key'])
{}
.
Thus, we cannot rely on the raisal of KeyError exceptions when accessing
a non-existing LDAP DNs in the MockLDAP.directory.
.
Instead, we check if MockLDAP.directory['some_key'] returns an empty
dict {} value.

…stent keys of MockLDAP.directory.

 The implementation of the internal MockLDAP.directory dictionary is
 defined via

    self.directory = defaultdict(lambda: {})

 This results in a dictionary that always returns an empty dict for any
 key requested:

    >>> print (self.directory['some_key'])
    {}

 Thus, we cannot rely on the raisal of KeyError exceptions when accessing
 a non-existing LDAP DNs in the MockLDAP.directory.

 Instead, we check if MockLDAP.directory['some_key'] returns an empty
 dict {} value.
@sunweaver

Copy link
Copy Markdown
Contributor Author

Please wait with reviewing this PR until #21 has been finally merged.

@sunweaver sunweaver changed the title fakeldap.py: Don't rely on KeyError exceptions when accessing non-exi… WIP: fakeldap.py: Don't rely on KeyError exceptions when accessing non-exi… Nov 30, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant