Commit 2e3031ce authored by Jim Fulton's avatar Jim Fulton

Changed the way the test setup avoids reading ~/.buildout/default.cfg

to work with recent change changes to use expanduser rather than
reading $HOME directly.
parent dd6f3349
...@@ -1127,6 +1127,7 @@ reading the configuration file. ($HOME is the value of the HOME ...@@ -1127,6 +1127,7 @@ reading the configuration file. ($HOME is the value of the HOME
environment variable. The '/' is replaced by the operating system file environment variable. The '/' is replaced by the operating system file
delimiter.) delimiter.)
>>> old_home = os.environ['HOME']
>>> home = tmpdir('home') >>> home = tmpdir('home')
>>> mkdir(home, '.buildout') >>> mkdir(home, '.buildout')
>>> write(home, '.buildout', 'default.cfg', >>> write(home, '.buildout', 'default.cfg',
...@@ -1167,7 +1168,7 @@ user defaults: ...@@ -1167,7 +1168,7 @@ user defaults:
op5 b3base 5 op5 b3base 5
recipe recipes:debug recipe recipes:debug
>>> del os.environ['HOME'] >>> os.environ['HOME'] = old_home
Log level Log level
--------- ---------
......
...@@ -156,13 +156,19 @@ def buildoutSetUp(test): ...@@ -156,13 +156,19 @@ def buildoutSetUp(test):
here = os.getcwd() here = os.getcwd()
register_teardown(lambda: os.chdir(here)) register_teardown(lambda: os.chdir(here))
old_home = os.environ.get('HOME')
if old_home is not None:
del os.environ['HOME'] # pop doesn't truly remove it :(
register_teardown(lambda: os.environ.__setitem__('HOME', old_home))
base = tempfile.mkdtemp('buildoutSetUp') base = tempfile.mkdtemp('buildoutSetUp')
register_teardown(lambda base=base: shutil.rmtree(base)) register_teardown(lambda base=base: shutil.rmtree(base))
old_home = os.environ.get('HOME')
os.environ['HOME'] = os.path.join(base, 'bbbBadHome')
def restore_home():
if old_home is None:
del os.environ['HOME']
else:
os.environ['HOME'] = old_home
register_teardown(restore_home)
base = os.path.join(base, '_TEST_') base = os.path.join(base, '_TEST_')
os.mkdir(base) os.mkdir(base)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment