diff options
author | Maru Newby <mnewby@internap.com> | 2012-04-05 19:24:04 -0700 |
---|---|---|
committer | Maru Newby <mnewby@internap.com> | 2012-04-06 08:06:16 -0700 |
commit | 12354cd82be452a90d87f18b325bb345f680f7b1 (patch) | |
tree | eb36080d6675b3b842e0f921efe1ebe8e9c21464 /tests/test_s3_token_middleware.py | |
parent | 75a8dfef51f3566cd5d4cacee41f34bbbf9d15bd (diff) | |
download | keystone-12354cd82be452a90d87f18b325bb345f680f7b1.tar.gz keystone-12354cd82be452a90d87f18b325bb345f680f7b1.tar.xz keystone-12354cd82be452a90d87f18b325bb345f680f7b1.zip |
Stub out swift log configuration during testing
* s3_token and swift_auth depend on swift.common.utils.get_logger,
which configures a syslog handler in an OS X-incompatible way.
This change ensures that get_logger is stubbed out for the
swift middleware tests to allow the Keystone test suite to execute
successfully under OS X.
* Addresses bug 974583
Change-Id: Ibdb665d1ea65c13ef792767ad66251857629a702
Diffstat (limited to 'tests/test_s3_token_middleware.py')
-rw-r--r-- | tests/test_s3_token_middleware.py | 35 |
1 files changed, 20 insertions, 15 deletions
diff --git a/tests/test_s3_token_middleware.py b/tests/test_s3_token_middleware.py index b5f299b9..c254ee2b 100644 --- a/tests/test_s3_token_middleware.py +++ b/tests/test_s3_token_middleware.py @@ -15,19 +15,28 @@ # under the License. import json +import logging -import nose +import stubout +import unittest2 as unittest import webob -from keystone import test +from swift.common import utils as swift_utils -try: - # NOTE(chmou): We don't want to force to have swift installed for - # unit test so we skip it we have an ImportError. - from keystone.middleware import s3_token - skip = False -except ImportError: - skip = True +from keystone.middleware import s3_token + + +def setUpModule(self): + self.stubs = stubout.StubOutForTesting() + # Stub out swift_utils.get_logger. get_logger tries to configure + # syslogging to '/dev/log', which will fail on OS X. + def fake_get_logger(config, log_route=None): + return logging.getLogger(log_route) + self.stubs.Set(swift_utils, 'get_logger', fake_get_logger) + + +def tearDownModule(self): + self.stubs.UnsetAll() class FakeHTTPResponse(object): @@ -65,12 +74,8 @@ class FakeApp(object): return resp(env, start_response) -class S3TokenMiddlewareTest(test.TestCase): +class S3TokenMiddlewareTest(unittest.TestCase): def setUp(self, expected_env=None): - # We probably going to end-up with the same strategy than - # test_swift_auth when this is decided. - if skip: - raise nose.SkipTest('no swift detected') self.middleware = s3_token.S3Token(FakeApp(), {}) self.middleware.http_client_class = FakeHTTPConnection @@ -125,6 +130,6 @@ class S3TokenMiddlewareTest(test.TestCase): path = req.environ['PATH_INFO'] self.assertTrue(path.startswith('/v1/AUTH_FORCED_TENANT_ID')) + if __name__ == '__main__': - import unittest unittest.main() |