summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorVictor Shyba <victor1984@riseup.net>2017-11-27 13:05:33 -0300
committerVictor Shyba <victor1984@riseup.net>2017-12-01 01:38:08 -0300
commitc3d079de4675b0fceca130ed3c6b8890ec28d873 (patch)
tree93bafca777d257943e0fd10bedbaa0392e5f3ac4 /tests
parentd574e734e19d5350992bc1aeb00014c41a444add (diff)
[feature] adds a stream downloader
First version, still missing consumer/producer model and some tweaks, but working. -- Related: #8809
Diffstat (limited to 'tests')
-rw-r--r--tests/server/test_blobs_server.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/server/test_blobs_server.py b/tests/server/test_blobs_server.py
index eabf3ee7..5a895ddc 100644
--- a/tests/server/test_blobs_server.py
+++ b/tests/server/test_blobs_server.py
@@ -238,6 +238,26 @@ class BlobServerTestCase(unittest.TestCase):
@defer.inlineCallbacks
@pytest.mark.usefixtures("method_tmpdir")
+ def test_downstream_from_namespace(self):
+ manager = BlobManager(self.tempdir, self.uri, self.secret,
+ self.secret, uuid4().hex,
+ remote_stream=self.stream_uri)
+ self.addCleanup(manager.close)
+ namespace, blob_id, content = 'incoming', 'blob_id1', 'test'
+ yield manager._encrypt_and_upload(blob_id, BytesIO(content),
+ namespace=namespace)
+ blob_id2, content2 = 'blob_id2', 'second test'
+ yield manager._encrypt_and_upload(blob_id2, BytesIO(content2),
+ namespace=namespace)
+ blobs_list = [blob_id, blob_id2]
+ yield manager._downstream(blobs_list, namespace)
+ result = yield manager.local.get(blob_id, namespace)
+ self.assertEquals(content, result.getvalue())
+ result = yield manager.local.get(blob_id2, namespace)
+ self.assertEquals(content2, result.getvalue())
+
+ @defer.inlineCallbacks
+ @pytest.mark.usefixtures("method_tmpdir")
def test_download_from_namespace(self):
manager = BlobManager('', self.uri, self.secret,
self.secret, uuid4().hex)