Files
python-keystoneclient/tests/test_shell.py
Gabriel Hurley 17f6b83ee6 Initial commit.
2011-10-25 16:50:08 -07:00

40 lines
1.2 KiB
Python

import os
import mock
import httplib2
from keystoneclient import shell as openstack_shell
from keystoneclient import exceptions
from tests import utils
class ShellTest(utils.TestCase):
# Patch os.environ to avoid required auth info.
def setUp(self):
global _old_env
fake_env = {
'KEYSTONE_USERNAME': 'username',
'KEYSTONE_API_KEY': 'password',
'KEYSTONE_PROJECT_ID': 'project_id',
'KEYSTONE_URL': 'http://127.0.0.1:5000',
}
_old_env, os.environ = os.environ, fake_env.copy()
# Make a fake shell object, a helping wrapper to call it, and a quick
# way of asserting that certain API calls were made.
global shell, _shell, assert_called, assert_called_anytime
_shell = openstack_shell.OpenStackIdentityShell()
shell = lambda cmd: _shell.main(cmd.split())
def tearDown(self):
global _old_env
os.environ = _old_env
def test_help_unknown_command(self):
self.assertRaises(exceptions.CommandError, shell, 'help foofoo')
def test_debug(self):
httplib2.debuglevel = 0
shell('--debug help')
assert httplib2.debuglevel == 1