diff options
author | drebs <drebs@leap.se> | 2017-07-27 17:12:04 -0300 |
---|---|---|
committer | Victor Shyba <victor1984@riseup.net> | 2017-09-11 16:24:30 -0300 |
commit | 99cffc7388d53f9aaf5b8890401ba8ddc5b29178 (patch) | |
tree | f98282d0818ebe048b49ffc0112a1843305497a2 /testing/tests/responsiveness/test_responsiveness.py | |
parent | 70aa789c94b0dcced535cee86243e2dd4113b28a (diff) |
[benchmarks] add responsiveness test with watchdog
Diffstat (limited to 'testing/tests/responsiveness/test_responsiveness.py')
-rw-r--r-- | testing/tests/responsiveness/test_responsiveness.py | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/testing/tests/responsiveness/test_responsiveness.py b/testing/tests/responsiveness/test_responsiveness.py new file mode 100644 index 00000000..c8844d94 --- /dev/null +++ b/testing/tests/responsiveness/test_responsiveness.py @@ -0,0 +1,50 @@ +import pytest + +from twisted.internet import defer + + +@pytest.inlineCallbacks +def load_up(client, amount, payload): + # create a bunch of local documents + deferreds = [] + for i in xrange(amount): + deferreds.append(client.create_doc({'content': payload})) + yield defer.gatherResults(deferreds) + + +def create_upload(amount, size): + + @pytest.mark.responsiveness + @pytest.inlineCallbacks + def _test(soledad_client, payload, watchdog): + + client = soledad_client() + yield load_up(client, amount, payload(size)) + yield watchdog(lambda: client.sync()) + + return _test + + +test_responsiveness_upload_10_1000k = create_upload(10, 1000 * 1000) +test_responsiveness_upload_100_100k = create_upload(100, 100 * 1000) +test_responsiveness_upload_1000_10k = create_upload(1000, 10 * 1000) + + +def create_download(downloads, size): + + @pytest.mark.responsiveness + @pytest.inlineCallbacks + def _test(soledad_client, payload, watchdog): + client = soledad_client() + yield load_up(client, downloads, payload(size)) + yield client.sync() + + clean_client = soledad_client(force_fresh_db=True) + yield watchdog(clean_client.sync) + + return _test + + +test_responsiveness_download_10_1000k = create_download(10, 1000 * 1000) +test_responsiveness_download_100_100k = create_download(100, 100 * 1000) +test_responsiveness_download_1000_10k = create_download(1000, 10 * 1000) |