1818import os
1919import mock
2020
21+ import fixtures
2122from openstackclient import shell as os_shell
2223from tests import utils
2324
@@ -50,18 +51,25 @@ def make_shell():
5051
5152class ShellTest (utils .TestCase ):
5253
54+ FAKE_ENV = {
55+ 'OS_AUTH_URL' : DEFAULT_AUTH_URL ,
56+ 'OS_TENANT_ID' : DEFAULT_TENANT_ID ,
57+ 'OS_TENANT_NAME' : DEFAULT_TENANT_NAME ,
58+ 'OS_USERNAME' : DEFAULT_USERNAME ,
59+ 'OS_PASSWORD' : DEFAULT_PASSWORD ,
60+ 'OS_REGION_NAME' : DEFAULT_REGION_NAME ,
61+ }
62+
5363 def setUp (self ):
5464 """ Patch os.environ to avoid required auth info"""
55- global _old_env
56- fake_env = {
57- 'OS_AUTH_URL' : DEFAULT_AUTH_URL ,
58- 'OS_TENANT_ID' : DEFAULT_TENANT_ID ,
59- 'OS_TENANT_NAME' : DEFAULT_TENANT_NAME ,
60- 'OS_USERNAME' : DEFAULT_USERNAME ,
61- 'OS_PASSWORD' : DEFAULT_PASSWORD ,
62- 'OS_REGION_NAME' : DEFAULT_REGION_NAME ,
63- }
64- _old_env , os .environ = os .environ , fake_env .copy ()
65+ super (ShellTest , self ).setUp ()
66+ for var in self .FAKE_ENV :
67+ self .useFixture (
68+ fixtures .EnvironmentVariable (
69+ var ,
70+ self .FAKE_ENV [var ]
71+ )
72+ )
6573
6674 # Make a fake shell object, a helping wrapper to call it, and a quick
6775 # way of asserting that certain API calls were made.
@@ -77,10 +85,9 @@ def setUp(self):
7785 self .cmd_save = self .cmd_patch .start ()
7886
7987 def tearDown (self ):
80- global _old_env
81- os .environ = _old_env
8288 #self.auth_patch.stop()
8389 self .cmd_patch .stop ()
90+ super (ShellTest , self ).tearDown ()
8491
8592 def test_shell_args (self ):
8693 sh = make_shell ()
0 commit comments