tests/test-demandimport.py
changeset 36237 b39f0fdb0338
parent 33918 eddca62d9e64
child 36251 c2c5f9f6fa21
equal deleted inserted replaced
36236:564dec70b50c 36237:b39f0fdb0338
    28     l = repr(obj)
    28     l = repr(obj)
    29     l = rsub("0x[0-9a-fA-F]+", "0x?", l)
    29     l = rsub("0x[0-9a-fA-F]+", "0x?", l)
    30     l = rsub("from '.*'", "from '?'", l)
    30     l = rsub("from '.*'", "from '?'", l)
    31     l = rsub("'<[a-z]*>'", "'<whatever>'", l)
    31     l = rsub("'<[a-z]*>'", "'<whatever>'", l)
    32     return l
    32     return l
       
    33 
       
    34 demandimport.disable()
       
    35 os.environ['HGDEMANDIMPORT'] = 'disable'
       
    36 # this enable call should not actually enable demandimport!
       
    37 demandimport.enable()
       
    38 from mercurial import node
       
    39 print("node =", f(node))
       
    40 # now enable it for real
       
    41 del os.environ['HGDEMANDIMPORT']
       
    42 demandimport.enable()
    33 
    43 
    34 import os
    44 import os
    35 
    45 
    36 print("os =", f(os))
    46 print("os =", f(os))
    37 print("os.system =", f(os.system))
    47 print("os.system =", f(os.system))
    95 # (see Python/import.c:import_module_level() and ensure_fromlist())
   105 # (see Python/import.c:import_module_level() and ensure_fromlist())
    96 contextlibimp = __import__('contextlib', globals(), locals(), ['unknownattr'])
   106 contextlibimp = __import__('contextlib', globals(), locals(), ['unknownattr'])
    97 print("__import__('contextlib', ..., ['unknownattr']) =", f(contextlibimp))
   107 print("__import__('contextlib', ..., ['unknownattr']) =", f(contextlibimp))
    98 print("hasattr(contextlibimp, 'unknownattr') =",
   108 print("hasattr(contextlibimp, 'unknownattr') =",
    99       util.safehasattr(contextlibimp, 'unknownattr'))
   109       util.safehasattr(contextlibimp, 'unknownattr'))
   100 
       
   101 demandimport.disable()
       
   102 os.environ['HGDEMANDIMPORT'] = 'disable'
       
   103 # this enable call should not actually enable demandimport!
       
   104 demandimport.enable()
       
   105 from mercurial import node
       
   106 print("node =", f(node))