diff options
author | Victor Shyba <victor1984@riseup.net> | 2017-03-22 16:34:15 -0300 |
---|---|---|
committer | drebs <drebs@leap.se> | 2017-04-04 18:27:38 +0200 |
commit | aaa9115cfd4096a4fb6cf0ffbc2c07c75ed3a751 (patch) | |
tree | 4edc3cea4624b764a301ee482190c5dfe184eb7c /testing/tests/blobs | |
parent | 5acadaa7716a86448af02c3a078759ddddd45c85 (diff) |
[feature] use 409 status code for existing blob id
Raising was generating 500, which is a generic status code for server
side errors. This commit adds proper status code of 409 while handling
the error on client side by translating the code into a proper exception
class.
Diffstat (limited to 'testing/tests/blobs')
-rw-r--r-- | testing/tests/blobs/test_fs_backend.py | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/testing/tests/blobs/test_fs_backend.py b/testing/tests/blobs/test_fs_backend.py index fd38336d..ce82fce0 100644 --- a/testing/tests/blobs/test_fs_backend.py +++ b/testing/tests/blobs/test_fs_backend.py @@ -18,6 +18,7 @@ Tests for blobs backend on server side. """ from twisted.trial import unittest +from twisted.web.test.test_web import DummyRequest from leap.soledad.server import _blobs from io import BytesIO from mock import Mock @@ -45,7 +46,7 @@ class FilesystemBackendTestCase(unittest.TestCase): render_mock = Mock() file_mock.return_value = render_mock backend = _blobs.FilesystemBlobsBackend() - request = object() + request = DummyRequest(['']) backend._get_path = Mock(return_value='path') backend.read_blob('user', 'blob_id', request) @@ -59,8 +60,10 @@ class FilesystemBackendTestCase(unittest.TestCase): isfile.return_value = True backend = _blobs.FilesystemBlobsBackend() backend._get_path = Mock(return_value='path') - with pytest.raises(_blobs.BlobAlreadyExists): - backend.write_blob('user', 'blob_id', 'request') + request = DummyRequest(['']) + result = backend.write_blob('user', 'blob_id', request) + assert result == "Blob already exists: blob_id" + assert request.responseCode == 409 @pytest.mark.usefixtures("method_tmpdir") @mock.patch.object(os.path, 'isfile') |