Merge pull request #3 from alexa-infra/fix-for-python-34

Fixed Upload FileStorage object. Upgrade apache-libcloud 0.19.0
This commit is contained in:
Mardix
2016-01-09 05:00:36 -05:00
3 changed files with 18 additions and 2 deletions
+1 -1
View File
@@ -308,7 +308,7 @@ class Storage(object):
raise InvalidExtensionError("Invalid file extension: '.%s' " % extension)
if isinstance(file, FileStorage):
obj = self.container.upload_object_via_stream(iterator=file,
obj = self.container.upload_object_via_stream(iterator=file.stream,
object_name=name,
extra=extra)
else:
+1 -1
View File
@@ -39,7 +39,7 @@ setup(
packages=find_packages(),
install_requires=[
"Flask==0.10.1",
"apache-libcloud==0.17.0",
"apache-libcloud==0.19.0",
"lockfile==0.10.2",
"shortuuid==0.1",
"six==1.9.0",
+16
View File
@@ -165,3 +165,19 @@ def test_save_to():
assert os.path.isfile(file)
assert file2 == CWD + "/data/my_new_file.txt"
def test_werkzeug_upload():
try:
import werkzeug
except ImportError:
return
storage = app_storage()
object_name = "my-txt-hello.txt"
filepath = CWD + "/data/hello.txt"
file = None
with open(filepath, 'rb') as fp:
file = werkzeug.datastructures.FileStorage(fp)
file.filename = object_name
o = storage.upload(file, overwrite=True)
assert isinstance(o, Object)
assert o.name == object_name