diff --git a/urlrewrite/test/simpleapp.py b/urlrewrite/test/simpleapp.py index 046691ea..ee620de3 100644 --- a/urlrewrite/test/simpleapp.py +++ b/urlrewrite/test/simpleapp.py @@ -12,17 +12,17 @@ from urlrewrite.rewriterapp import RewriterApp # ============================================================================ class RWApp(RewriterApp): - def __init__(self, upstream_url): - self.upstream_url = upstream_url + def __init__(self, upstream_urls): + self.upstream_urls = upstream_urls self.app = Bottle() self.block_loader = LocalFileLoader() self.init_routes() super(RWApp, self).__init__(True) def get_upstream_url(self, url, wb_url, closest, kwargs): - return self.upstream_url.format(url=quote(url), - closest=closest, - type=kwargs.get('type')) + type = kwargs.get('type') + return self.upstream_urls[type].format(url=quote(url), + closest=closest) def init_routes(self): @self.app.get('/static/__pywb/') @@ -35,12 +35,23 @@ class RWApp(RewriterApp): return data self.app.mount('/live/', self.call_with_params(type='live')) - self.app.mount('/replay/', self.call_with_params(type='replay-testdata')) + self.app.mount('/record/', self.call_with_params(type='record')) + self.app.mount('/replay/', self.call_with_params(type='replay')) + + @staticmethod + def create_app(replay_port=8080, record_port=8010): + upstream_urls = {'live': 'http://localhost:%s/live/resource/postreq?url={url}&closest={closest}' % replay_port, + 'record': 'http://localhost:%s/live/resource/postreq?url={url}&closest={closest}' % record_port, + 'replay': 'http://localhost:%s/replay/resource/postreq?url={url}&closest={closest}' % replay_port, + } + + rwapp = RWApp(upstream_urls) + return rwapp # ============================================================================ if __name__ == "__main__": - rwapp = RWApp('http://localhost:8080/{type}/resource/postreq?url={url}&closest={closest}') - rwapp.app.run(port=8090) + application = RWApp.create_app() + application.app.run(port=8090, server='gevent') diff --git a/urlrewrite/test/test_rewriter.py b/urlrewrite/test/test_rewriter.py index 66cbffc6..7f10a280 100644 --- a/urlrewrite/test/test_rewriter.py +++ b/urlrewrite/test/test_rewriter.py @@ -11,10 +11,11 @@ class TestRewriter(LiveServerTests, BaseTestClass): @classmethod def setup_class(cls): super(TestRewriter, cls).setup_class() - cls.upstream_url = 'http://localhost:{0}'.format(cls.server.port) - cls.upstream_url += '/{type}/resource/postreq?url={url}&closest={closest}' + #cls.upstream_url = 'http://localhost:{0}'.format(cls.server.port) + #cls.upstream_url += '/{type}/resource/postreq?url={url}&closest={closest}' + #cls.app = RWApp(cls.upstream_url) - cls.app = RWApp(cls.upstream_url) + cls.app = RWApp.create_app(replay_port=cls.server.port) cls.testapp = webtest.TestApp(cls.app.app) def test_replay(self): diff --git a/urlrewrite/test/uwsgi.ini b/urlrewrite/test/uwsgi.ini index ea3a22c3..7acd4f0b 100644 --- a/urlrewrite/test/uwsgi.ini +++ b/urlrewrite/test/uwsgi.ini @@ -13,6 +13,6 @@ endif = gevent = 100 -wsgi = testapp +wsgi = urlrewrite.test.simpleapp