New submission from Tymek Wołodźko <twolod...@gmail.com>: Nonetheless having several attempts, I wasn't able to create reproducible example for this bug, but I will try describing it in detail.
I have a package with multiple modules. One of the paths is like `mymodule.nestedmodule.io`, among other functions, this module contains functions `foo()` and `bar()`, where `bar()` does call `foo()`. The module *does not* import base python's `io` module. I have a unit test that patches: with path('mymodule.nestedmodule.io.foo'): bar() The problem is, when running the test I get the following error: `AttributeError: <module 'io' from '/usr/local/lib/python3.7/io.py'> does not have the attribute 'foo'`. The problem is solved when I rename `io` to `myio` and correct all the paths to use the new name. ---------- components: Library (Lib) messages: 382303 nosy: twolodzko priority: normal severity: normal status: open title: unittest.patch confuses modules with base modules type: behavior versions: Python 3.7 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue42535> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com