[Python-Dev] test___all__ polluting sys.modules?
Stefan Krah
stefan at bytereef.org
Sun Dec 30 14:54:20 CET 2012
More information about the Python-Dev mailing list
Sun Dec 30 14:54:20 CET 2012
- Previous message: [Python-Dev] test___all__ polluting sys.modules?
- Next message: [Python-Dev] test___all__ polluting sys.modules?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Eli Bendersky <eliben at gmail.com> wrote: > Yes, this is the solution currently used in test_xml_etree. However, once > pickling tests are added things stop working. Pickle uses __import__ to import > the module a class belongs to, bypassing all such trickery. So if test___all__ > got _elementtree into sys.modules, pickle's __import__ finds it even if all the > tests in test_xml_etree manage to ignore it for the Python version because they > use import_fresh_module. I ran into the same problem for test_decimal. The only thing that appears to work is to set sys.modules['decimal'] explicitly before calling dumps()/loads(). See: PythonAPItests.test_pickle() ContextAPItests.test_pickle() test_decimal ruthlessly switches sys.modules['decimal'] many times. At the end of all tests there is a sanity check that asserts that the number of changes were in fact balanced. Stefan Krah
- Previous message: [Python-Dev] test___all__ polluting sys.modules?
- Next message: [Python-Dev] test___all__ polluting sys.modules?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list