D2286: tests: actually check that HGDEMANDIMPORT=disable disables demandimport

martinvonz (Martin von Zweigbergk) phabricator at mercurial-scm.org
Fri Feb 16 14:40:55 EST 2018


martinvonz created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  At the point in the test where we were checking that the 'node' got
  eagerly loaded, it had already been loaded (via the pvec module), so
  our check wasn't doing anything (i.e. the test would pass even if you
  removed the line that set HGDEMANDIMPORT=disable). Let's move this
  test earlier so it tests what it was meant to test.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D2286

AFFECTED FILES
  tests/test-demandimport.py
  tests/test-demandimport.py.out

CHANGE DETAILS

diff --git a/tests/test-demandimport.py.out b/tests/test-demandimport.py.out
--- a/tests/test-demandimport.py.out
+++ b/tests/test-demandimport.py.out
@@ -1,3 +1,4 @@
+node = <module 'mercurial.node' from '?'>
 os = <unloaded module 'os'>
 os.system = <built-in function system>
 os = <module 'os' from '?'>
@@ -27,4 +28,3 @@
 contextlib.unknownattr = ImportError: cannot import name unknownattr
 __import__('contextlib', ..., ['unknownattr']) = <module 'contextlib' from '?'>
 hasattr(contextlibimp, 'unknownattr') = False
-node = <module 'mercurial.node' from '?'>
diff --git a/tests/test-demandimport.py b/tests/test-demandimport.py
--- a/tests/test-demandimport.py
+++ b/tests/test-demandimport.py
@@ -31,6 +31,16 @@
     l = rsub("'<[a-z]*>'", "'<whatever>'", l)
     return l
 
+demandimport.disable()
+os.environ['HGDEMANDIMPORT'] = 'disable'
+# this enable call should not actually enable demandimport!
+demandimport.enable()
+from mercurial import node
+print("node =", f(node))
+# now enable it for real
+del os.environ['HGDEMANDIMPORT']
+demandimport.enable()
+
 import os
 
 print("os =", f(os))
@@ -97,10 +107,3 @@
 print("__import__('contextlib', ..., ['unknownattr']) =", f(contextlibimp))
 print("hasattr(contextlibimp, 'unknownattr') =",
       util.safehasattr(contextlibimp, 'unknownattr'))
-
-demandimport.disable()
-os.environ['HGDEMANDIMPORT'] = 'disable'
-# this enable call should not actually enable demandimport!
-demandimport.enable()
-from mercurial import node
-print("node =", f(node))



To: martinvonz, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list