Exemple #1
0
def wsgi_app(inner_app_v2=None,
             fake_auth=True,
             fake_auth_context=None,
             use_no_auth=False,
             ext_mgr=None):
    if not inner_app_v2:
        inner_app_v2 = router.APIRouter(ext_mgr)

    if fake_auth:
        if fake_auth_context is not None:
            ctxt = fake_auth_context
        else:
            ctxt = context.RequestContext('fake', 'fake', auth_token=True)
        api_v2 = fault.FaultWrapper(auth.InjectContext(ctxt, inner_app_v2))
    elif use_no_auth:
        api_v2 = fault.FaultWrapper(
            auth.NoAuthMiddleware(limits.RateLimitingMiddleware(inner_app_v2)))
    else:
        api_v2 = fault.FaultWrapper(
            auth.AuthMiddleware(limits.RateLimitingMiddleware(inner_app_v2)))

    mapper = urlmap.URLMap()
    mapper['/v2'] = api_v2
    mapper['/'] = fault.FaultWrapper(versions.Versions())
    return mapper
Exemple #2
0
 def test_versions_index(self):
     req = fakes.HTTPRequest.blank('/')
     req.method = 'GET'
     req.content_type = 'application/json'
     resource = versions.Versions()
     result = resource.dispatch(resource.index, req, {})
     ids = [v['id'] for v in result['versions']]
     self.assertEqual(set(ids), set(['v1.0', 'v2.0']))
Exemple #3
0
 def test_versions_multi_disable_v2(self):
     self.flags(enable_v2_api=False)
     req = fakes.HTTPRequest.blank('/')
     req.method = 'GET'
     req.content_type = 'application/json'
     resource = versions.Versions()
     result = resource.dispatch(resource.multi, req, {})
     ids = [v['id'] for v in result['choices']]
     self.assertEqual(set(ids), set(['v1.0']))