-
- Notifications
You must be signed in to change notification settings - Fork 33.6k
Closed
Labels
stdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Description
Bug report
The code below raises the error below. If I'm understanding the documentation for mock.seal correctly, it's supposed to prevent the creation of new attributes on the sealed mock, not prevent calls to existing methods, right?
from unittest import mock class Foo: def foo(self) -> int: return 0 foo = mock.create_autospec(Foo, instance=True) mock.seal(foo) foo.foo()Traceback (most recent call last): File "/tmp/tmp.8toUu9Dy3T/foo.py", line 7, in <module> foo.foo() File "/usr/lib/python3.9/unittest/mock.py", line 1092, in __call__ return self._mock_call(*args, **kwargs) File "/usr/lib/python3.9/unittest/mock.py", line 1096, in _mock_call return self._execute_mock_call(*args, **kwargs) File "/usr/lib/python3.9/unittest/mock.py", line 1168, in _execute_mock_call return self.return_value File "/usr/lib/python3.9/unittest/mock.py", line 630, in __getattr__ raise AttributeError("Mock object has no attribute %r" % name) AttributeError: Mock object has no attribute 'return_value' Your environment
- CPython versions tested on: 3.9.9
- Operating system and architecture: Debian testing / amd64
Metadata
Metadata
Assignees
Labels
stdlibStandard Library Python modules in the Lib/ directoryStandard Library Python modules in the Lib/ directorytype-bugAn unexpected behavior, bug, or errorAn unexpected behavior, bug, or error
Projects
Status
Done