コード例 #1
0
        def getresponse(self):
            conf = utils.TestConfigOpts({
                'verbose':
                VERBOSE,
                'debug':
                DEBUG,
                'bind_host':
                '0.0.0.0',
                'bind_port':
                '9999999',
                'registry_host':
                '0.0.0.0',
                'registry_port':
                '9191',
                'default_store':
                'file',
                'filesystem_store_datadir':
                base_dir,
                'policy_file':
                os.path.join(base_dir, 'policy.json'),
            })
            api = version_negotiation.VersionNegotiationFilter(
                context.ContextMiddleware(router.API(conf), conf), conf)
            res = self.req.get_response(api)

            # httplib.Response has a read() method...fake it out
            def fake_reader():
                return res.body

            setattr(res, 'read', fake_reader)
            return res
コード例 #2
0
    def test_http_error_response_codes(self):
        sample_id, member_id, tag_val, task_id = 'abc', '123', '1', '2'

        """Makes sure v1 unallowed methods return 405"""
        unallowed_methods = [
            ('/images', ['PUT', 'DELETE', 'HEAD', 'PATCH']),
            ('/images/detail', ['POST', 'PUT', 'DELETE', 'PATCH']),
            ('/images/%s' % sample_id, ['POST', 'PATCH']),
            ('/images/%s/members' % sample_id,
                ['POST', 'DELETE', 'HEAD', 'PATCH']),
            ('/images/%s/members/%s' % (sample_id, member_id),
                ['POST', 'HEAD', 'PATCH']),
        ]
        api = test_utils.FakeAuthMiddleware(router_v1.API(routes.Mapper()))
        for uri, methods in unallowed_methods:
            for method in methods:
                req = webob.Request.blank(uri)
                req.method = method
                res = req.get_response(api)
                self.assertEqual(405, res.status_int)

        """Makes sure v2 unallowed methods return 405"""
        unallowed_methods = [
            ('/schemas/image', ['POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/schemas/images', ['POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/schemas/member', ['POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/schemas/members', ['POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/schemas/task', ['POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/schemas/tasks', ['POST', 'PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/images', ['PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/images/%s' % sample_id, ['POST', 'PUT', 'HEAD']),
            ('/images/%s/file' % sample_id,
                ['POST', 'DELETE', 'PATCH', 'HEAD']),
            ('/images/%s/tags/%s' % (sample_id, tag_val),
                ['GET', 'POST', 'PATCH', 'HEAD']),
            ('/images/%s/members' % sample_id,
                ['PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/images/%s/members/%s' % (sample_id, member_id),
                ['POST', 'PATCH', 'HEAD']),
            ('/tasks', ['PUT', 'DELETE', 'PATCH', 'HEAD']),
            ('/tasks/%s' % task_id, ['POST', 'PUT', 'PATCH', 'HEAD']),
        ]
        api = test_utils.FakeAuthMiddleware(router_v2.API(routes.Mapper()))
        for uri, methods in unallowed_methods:
            for method in methods:
                req = webob.Request.blank(uri)
                req.method = method
                res = req.get_response(api)
                self.assertEqual(405, res.status_int)

        """Makes sure not implemented methods return 501"""
        req = webob.Request.blank('/schemas/image')
        req.method = 'NonexistentMethod'
        res = req.get_response(api)
        self.assertEqual(501, res.status_int)
コード例 #3
0
        def getresponse(self):
            mapper = routes.Mapper()
            api = context.UnauthenticatedContextMiddleware(router.API(mapper))
            res = self.req.get_response(api)

            # httplib.Response has a read() method...fake it out
            def fake_reader():
                return res.body

            setattr(res, 'read', fake_reader)
            return res
コード例 #4
0
        def getresponse(self):
            options = {
                'verbose': VERBOSE,
                'debug': DEBUG,
                'bind_host': '0.0.0.0',
                'bind_port': '9999999',
                'registry_host': '0.0.0.0',
                'registry_port': '9191',
                'default_store': 'file',
                'filesystem_store_datadir': FAKE_FILESYSTEM_ROOTDIR
            }
            api = version_negotiation.VersionNegotiationFilter(
                context.ContextMiddleware(router.API(options), options),
                options)
            res = self.req.get_response(api)

            # httplib.Response has a read() method...fake it out
            def fake_reader():
                return res.body

            setattr(res, 'read', fake_reader)
            return res