avoid double-instantiation of PluginManager in case of the "python pytest.py" or -m pytest invocation

This commit is contained in:
holger krekel 2012-09-25 11:58:41 +02:00
parent cd1ead4f7b
commit fe4ccdff0e
1 changed files with 8 additions and 6 deletions

View File

@ -1,13 +1,15 @@
"""
unit and functional testing with Python.
pytest: unit and functional testing with Python.
"""
__all__ = ['main']
from _pytest.core import main, UsageError, _preloadplugins
from _pytest import core as cmdline
from _pytest import __version__
if __name__ == '__main__': # if run as a script or by 'python -m pytest'
raise SystemExit(main())
# we trigger the below "else" condition by the following import
import pytest
raise SystemExit(pytest.main())
else:
# we are simply imported
from _pytest.core import main, UsageError, _preloadplugins
from _pytest import core as cmdline
from _pytest import __version__
_preloadplugins() # to populate pytest.* namespace so help(pytest) works