Mercurial > public > mercurial-scm > hg-stable
diff tests/test-demandimport.py @ 30024:26a4e46af2bc
demandimport: error out early on missing attribute of non package (issue5373)
If the parent module isn't a package, all valid attributes must be obtained
from it. We can raise ImportError early if any attributes not found.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 26 Sep 2016 23:28:57 +0900 |
parents | 129e38a76f2c |
children | 1914db1b7d9e |
line wrap: on
line diff
--- a/tests/test-demandimport.py Tue Sep 27 21:56:00 2016 +0900 +++ b/tests/test-demandimport.py Mon Sep 26 23:28:57 2016 +0900 @@ -63,6 +63,15 @@ print("re.stderr =", f(re.stderr)) print("re =", f(re)) +import contextlib +print("contextlib =", f(contextlib)) +try: + from contextlib import unknownattr + print('no demandmod should be created for attribute of non-package ' + 'module:\ncontextlib.unknownattr =', f(unknownattr)) +except ImportError as inst: + print('contextlib.unknownattr = ImportError: %s' % inst) + demandimport.disable() os.environ['HGDEMANDIMPORT'] = 'disable' # this enable call should not actually enable demandimport!