Use testtools instead of unittest for base classes.

part of blueprint grizzle-testtools

Change-Id: Ic9b438b4224d945e080d1d6071742ddc47ee81ed
This commit is contained in:
Monty Taylor
2012-12-24 23:36:10 -06:00
parent d37a3fb06c
commit 55f2cdbe29
8 changed files with 46 additions and 44 deletions

View File

@@ -41,8 +41,8 @@ Human Alphabetical Order Examples
import logging
import random
import StringIO
import testtools
import time
import unittest
import httplib2

View File

@@ -19,7 +19,7 @@ import iso8601
import os
import string
import tempfile
import unittest2 as unittest
import testtools
import webob
@@ -335,9 +335,10 @@ class FakeApp(object):
return resp(env, start_response)
class BaseAuthTokenMiddlewareTest(unittest.TestCase):
class BaseAuthTokenMiddlewareTest(testtools.TestCase):
def setUp(self, expected_env=None):
super(BaseAuthTokenMiddlewareTest, self).setUp()
expected_env = expected_env or {}
conf = {
@@ -537,8 +538,8 @@ class AuthTokenMiddlewareTest(test.NoModule, BaseAuthTokenMiddlewareTest):
def test_verify_signed_token_raises_exception_for_revoked_token(self):
self.middleware.token_revocation_list = self.get_revocation_list_json()
with self.assertRaises(auth_token.InvalidUserToken):
self.middleware.verify_signed_token(REVOKED_TOKEN)
self.assertRaises(auth_token.InvalidUserToken,
self.middleware.verify_signed_token, REVOKED_TOKEN)
def test_verify_signed_token_succeeds_for_unrevoked_token(self):
self.middleware.token_revocation_list = self.get_revocation_list_json()
@@ -579,8 +580,8 @@ class AuthTokenMiddlewareTest(test.NoModule, BaseAuthTokenMiddlewareTest):
def test_invalid_revocation_list_raises_service_error(self):
globals()['SIGNED_REVOCATION_LIST'] = "{}"
with self.assertRaises(auth_token.ServiceError):
self.middleware.fetch_revocation_list()
self.assertRaises(auth_token.ServiceError,
self.middleware.fetch_revocation_list)
def test_fetch_revocation_list(self):
fetched_list = jsonutils.loads(self.middleware.fetch_revocation_list())
@@ -696,7 +697,7 @@ class AuthTokenMiddlewareTest(test.NoModule, BaseAuthTokenMiddlewareTest):
self.assertFalse(auth_token.will_expire_soon(fortyseconds))
class TokenEncodingTest(unittest.TestCase):
class TokenEncodingTest(testtools.TestCase):
def test_unquoted_token(self):
self.assertEqual('foo%20bar', auth_token.safe_quote('foo bar'))

View File

@@ -14,11 +14,12 @@
# License for the specific language governing permissions and limitations
# under the License.
import unittest2 as unittest
import testtools
from keystoneclient.contrib.ec2.utils import Ec2Signer
class Ec2SignerTest(unittest.TestCase):
class Ec2SignerTest(testtools.TestCase):
def setUp(self):
super(Ec2SignerTest, self).setUp()
@@ -26,9 +27,6 @@ class Ec2SignerTest(unittest.TestCase):
self.secret = '89cdf9e94e2643cab35b8b8ac5a51f83'
self.signer = Ec2Signer(self.secret)
def tearDown(self):
super(Ec2SignerTest, self).tearDown()
def test_generate_0(self):
"""Test generate function for v0 signature"""
credentials = {'host': '127.0.0.1',

View File

@@ -1,6 +1,7 @@
import os
import mock
import fixtures
import requests
from keystoneclient import shell as openstack_shell
@@ -18,17 +19,21 @@ DEFAULT_AUTH_URL = 'http://127.0.0.1:5000/v2.0/'
class ShellTest(utils.TestCase):
FAKE_ENV = {
'OS_USERNAME': DEFAULT_USERNAME,
'OS_PASSWORD': DEFAULT_PASSWORD,
'OS_TENANT_ID': DEFAULT_TENANT_ID,
'OS_TENANT_NAME': DEFAULT_TENANT_NAME,
'OS_AUTH_URL': DEFAULT_AUTH_URL,
}
# Patch os.environ to avoid required auth info.
def setUp(self):
global _old_env
fake_env = {
'OS_USERNAME': DEFAULT_USERNAME,
'OS_PASSWORD': DEFAULT_PASSWORD,
'OS_TENANT_ID': DEFAULT_TENANT_ID,
'OS_TENANT_NAME': DEFAULT_TENANT_NAME,
'OS_AUTH_URL': DEFAULT_AUTH_URL,
}
_old_env, os.environ = os.environ, fake_env.copy()
super(ShellTest, self).setUp()
for var in self.FAKE_ENV:
self.useFixture(fixtures.EnvironmentVariable(var,
self.FAKE_ENV[var]))
# Make a fake shell object, a helping wrapper to call it, and a quick
# way of asserting that certain API calls were made.
@@ -36,10 +41,6 @@ class ShellTest(utils.TestCase):
_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')

View File

@@ -2,12 +2,12 @@ import time
import mox
import requests
import unittest2 as unittest
import testtools
from keystoneclient.v2_0 import client
class TestCase(unittest.TestCase):
class TestCase(testtools.TestCase):
TEST_TENANT_ID = '1'
TEST_TENANT_NAME = 'aTenant'
TEST_TOKEN = 'aToken'
@@ -82,12 +82,12 @@ class TestCase(unittest.TestCase):
def tearDown(self):
time.time = self._original_time
super(TestCase, self).tearDown()
self.mox.UnsetStubs()
self.mox.VerifyAll()
super(TestCase, self).tearDown()
class UnauthenticatedTestCase(unittest.TestCase):
class UnauthenticatedTestCase(testtools.TestCase):
""" Class used as base for unauthenticated calls """
TEST_ROOT_URL = 'http://127.0.0.1:5000/'
TEST_URL = '%s%s' % (TEST_ROOT_URL, 'v2.0')
@@ -107,9 +107,9 @@ class UnauthenticatedTestCase(unittest.TestCase):
def tearDown(self):
time.time = self._original_time
super(UnauthenticatedTestCase, self).tearDown()
self.mox.UnsetStubs()
self.mox.VerifyAll()
super(UnauthenticatedTestCase, self).tearDown()
class TestResponse(requests.Response):

View File

@@ -1,3 +1,4 @@
import testtools
import uuid
from keystoneclient.v3 import endpoints
@@ -36,8 +37,8 @@ class EndpointTests(utils.TestCase, utils.CrudTests):
def test_create_invalid_interface(self):
ref = self.new_ref(interface=uuid.uuid4().hex)
with self.assertRaises(Exception):
self.manager.create(**utils.parameterize(ref))
self.assertRaises(Exception, self.manager.create,
**utils.parameterize(ref))
def test_update_public_interface(self):
ref = self.new_ref(interface='public')
@@ -53,8 +54,8 @@ class EndpointTests(utils.TestCase, utils.CrudTests):
def test_update_invalid_interface(self):
ref = self.new_ref(interface=uuid.uuid4().hex)
with self.assertRaises(Exception):
self.manager.update(**utils.parameterize(ref))
self.assertRaises(Exception, self.manager.update,
**utils.parameterize(ref))
def test_list_public_interface(self):
interface = 'public'
@@ -74,5 +75,5 @@ class EndpointTests(utils.TestCase, utils.CrudTests):
def test_list_invalid_interface(self):
interface = uuid.uuid4().hex
expected_path = 'v3/%s?interface=%s' % (self.collection_key, interface)
with self.assertRaises(Exception):
self.manager.list(expected_path=expected_path, interface=interface)
self.assertRaises(Exception, self.manager.list,
expected_path=expected_path, interface=interface)

View File

@@ -6,7 +6,7 @@ import urlparse
import mox
import requests
import unittest2 as unittest
import testtools
from keystoneclient.v3 import client
@@ -31,7 +31,7 @@ class TestClient(client.Client):
return json.dumps(entity, sort_keys=True)
class TestCase(unittest.TestCase):
class TestCase(testtools.TestCase):
TEST_TENANT_NAME = 'aTenant'
TEST_TOKEN = 'aToken'
TEST_USER = 'test'
@@ -58,12 +58,12 @@ class TestCase(unittest.TestCase):
def tearDown(self):
time.time = self._original_time
super(TestCase, self).tearDown()
self.mox.UnsetStubs()
self.mox.VerifyAll()
super(TestCase, self).tearDown()
class UnauthenticatedTestCase(unittest.TestCase):
class UnauthenticatedTestCase(testtools.TestCase):
""" Class used as base for unauthenticated calls """
TEST_ROOT_URL = 'http://127.0.0.1:5000/'
TEST_URL = '%s%s' % (TEST_ROOT_URL, 'v3')
@@ -83,12 +83,12 @@ class UnauthenticatedTestCase(unittest.TestCase):
def tearDown(self):
time.time = self._original_time
super(UnauthenticatedTestCase, self).tearDown()
self.mox.UnsetStubs()
self.mox.VerifyAll()
super(UnauthenticatedTestCase, self).tearDown()
class CrudTests(object):
class CrudTests(testtools.TestCase):
key = None
collection_key = None
model = None

View File

@@ -1,6 +1,7 @@
distribute>=0.6.24
coverage
fixtures
keyring
mock
mox
@@ -10,7 +11,7 @@ openstack.nose_plugin
nosehtmloutput
pep8==1.3.3
sphinx>=1.1.2
unittest2>=0.5.1
testtools>=0.9.22
WebOb==1.0.8
iso8601>=0.1.4