##// END OF EJS Templates
hooks: use safer method of exporting the RC_SCM_DATA, prevents JSON decode errors in case of None value
hooks: use safer method of exporting the RC_SCM_DATA, prevents JSON decode errors in case of None value

File last commit:

r130:326cc3c5 default
r345:a3726eeb default
Show More
test_http_performance.py
44 lines | 1.1 KiB | text/x-python | PythonLexer
/ vcsserver / tests / test_http_performance.py
packaging: moved tests into the main library itself. This is consistent with how our other projects do it.
r130 """
Tests used to profile the HTTP based implementation.
"""
import pytest
import webtest
from vcsserver.http_main import main
@pytest.fixture
def vcs_app():
stub_settings = {
'dev.use_echo_app': 'true',
'beaker.cache.regions': 'repo_object',
'beaker.cache.repo_object.type': 'memorylru',
'beaker.cache.repo_object.max_items': '100',
'beaker.cache.repo_object.expire': '300',
'beaker.cache.repo_object.enabled': 'true',
'locale': 'en_US.UTF-8',
}
vcs_app = main({}, **stub_settings)
app = webtest.TestApp(vcs_app)
return app
@pytest.fixture(scope='module')
def data():
one_kb = 'x' * 1024
return one_kb * 1024 * 10
def test_http_app_streaming_with_data(data, repeat, vcs_app):
app = vcs_app
for x in xrange(repeat / 10):
response = app.post('/stream/git/', params=data)
assert response.status_code == 200
def test_http_app_streaming_no_data(repeat, vcs_app):
app = vcs_app
for x in xrange(repeat / 10):
response = app.post('/stream/git/')
assert response.status_code == 200