diff options
author | drebs <drebs@leap.se> | 2017-12-10 21:22:13 -0200 |
---|---|---|
committer | drebs <drebs@leap.se> | 2017-12-12 13:46:53 -0200 |
commit | 5cd3883f9ba98f3e78a818988860da0071c9480b (patch) | |
tree | cb6c421775b0941665299d0d20029d00ab3d63d9 /tests/blobs/test_blob_manager.py | |
parent | 1c533260d94e03da59d46d507b1ed611fbae7011 (diff) |
[bug] use namespace when uploading blobs
Diffstat (limited to 'tests/blobs/test_blob_manager.py')
-rw-r--r-- | tests/blobs/test_blob_manager.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/tests/blobs/test_blob_manager.py b/tests/blobs/test_blob_manager.py index 76ebcd03..761ede44 100644 --- a/tests/blobs/test_blob_manager.py +++ b/tests/blobs/test_blob_manager.py @@ -83,6 +83,29 @@ class BlobManagerTestCase(unittest.TestCase): @defer.inlineCallbacks @pytest.mark.usefixtures("method_tmpdir") + def test_put_stores_on_local_db_with_namespace(self): + self.manager._encrypt_and_upload = Mock(return_value=None) + self.manager._download_and_decrypt = Mock(return_value=None) + msg, blob_id = "Hey Joe", uuid4().hex + doc = BlobDoc(BytesIO(msg), blob_id=blob_id) + + yield self.manager.put(doc, size=len(msg), namespace='custom') + self.assertTrue(self.manager._encrypt_and_upload.called) + + arg1, arg2 = self.manager._encrypt_and_upload.call_args[0] + kwargs = self.manager._encrypt_and_upload.call_args[1] + self.assertEquals(arg1, blob_id) + self.assertTrue(isinstance(arg2, BytesIO)) + self.assertEquals(kwargs, {'namespace': 'custom'}) + + result = yield self.manager.local.get(blob_id) + self.assertEquals(result, None) + + result = yield self.manager.local.get(blob_id, namespace='custom') + self.assertEquals(result.getvalue(), msg) + + @defer.inlineCallbacks + @pytest.mark.usefixtures("method_tmpdir") def test_put_local_only_doesnt_send_to_server(self): self.manager._encrypt_and_upload = Mock(return_value=None) msg, blob_id = "Hey Joe", uuid4().hex |