Robert Oliveira
Robert Oliveira
The __contains__ method is actually redundant and causes a strange behavior documented in the additional tests in this pull request.
platform.version() doesn't return the python version. platform.python_version() or platform.python_version_tuple() would also work but sys.version_info is more popular.
Once checked that __contains__ is not required by the tests in its docstrings we can remove it.
The calls to the upper-class methods should use dict instead of object. Maybe pedantic as there is no impact and it is unlikely to have the __getattribute__, __delattr__, and __setattr__...
Change tests comparing results with dictionaries as suggested by the doctests documentation: https://docs.python.org/3.5/library/doctest.html#warnings
The method __getattr__ is called as a fallback method for __getattribute__ hence the removed call always fails and is unnecessary.