diff --git a/keystonemiddleware/auth_token.py b/keystonemiddleware/auth_token.py index 974e5906..785f47ac 100644 --- a/keystonemiddleware/auth_token.py +++ b/keystonemiddleware/auth_token.py @@ -195,7 +195,7 @@ import six from six.moves import urllib from keystonemiddleware import _memcache_crypt as memcache_crypt -from keystonemiddleware.i18n import _, _LE, _LI, _LW +from keystonemiddleware.i18n import _, _LC, _LE, _LI, _LW from keystonemiddleware.openstack.common import memorycache diff --git a/keystonemiddleware/tests/test_auth_token_middleware.py b/keystonemiddleware/tests/test_auth_token_middleware.py index 446ea03d..70a8d558 100644 --- a/keystonemiddleware/tests/test_auth_token_middleware.py +++ b/keystonemiddleware/tests/test_auth_token_middleware.py @@ -2407,6 +2407,26 @@ class v3CompositeAuthTests(BaseAuthTokenMiddlewareTest, return response +class OtherTests(BaseAuthTokenMiddlewareTest): + + def setUp(self): + super(OtherTests, self).setUp() + self.logger = self.useFixture(fixtures.FakeLogger()) + + def test_unknown_server_versions(self): + versions = fixture.DiscoveryList(v2=False, v3_id='v4', href=BASE_URI) + self.set_middleware() + + self.requests.get(BASE_URI, json=versions, status_code=300) + + req = webob.Request.blank('/') + req.headers['X-Auth-Token'] = uuid.uuid4().hex + self.middleware(req.environ, self.start_fake_response) + self.assertEqual(503, self.response_status) + + self.assertIn('versions [v3.0, v2.0]', self.logger.output) + + class DefaultAuthPluginTests(testtools.TestCase): def new_plugin(self, auth_host=None, auth_port=None, auth_protocol=None,