mirror of
https://github.com/GNS3/gns3-server
synced 2025-02-19 19:42:02 +00:00
parent
c10e692ca2
commit
b36c5f25d2
@ -71,8 +71,11 @@ class UploadHandler:
|
|||||||
try:
|
try:
|
||||||
os.makedirs(destination_dir, exist_ok=True)
|
os.makedirs(destination_dir, exist_ok=True)
|
||||||
with open(destination_path, "wb+") as f:
|
with open(destination_path, "wb+") as f:
|
||||||
chunk = data["file"].file.read()
|
while True:
|
||||||
f.write(chunk)
|
chunk = data["file"].file.read(512)
|
||||||
|
if not chunk:
|
||||||
|
break
|
||||||
|
f.write(chunk)
|
||||||
st = os.stat(destination_path)
|
st = os.stat(destination_path)
|
||||||
os.chmod(destination_path, st.st_mode | stat.S_IXUSR)
|
os.chmod(destination_path, st.st_mode | stat.S_IXUSR)
|
||||||
except OSError as e:
|
except OSError as e:
|
||||||
|
@ -31,8 +31,10 @@ def test_index_upload(server):
|
|||||||
|
|
||||||
def test_upload(server, tmpdir):
|
def test_upload(server, tmpdir):
|
||||||
|
|
||||||
|
content = ''.join(['a' for _ in range(0, 1025)])
|
||||||
|
|
||||||
with open(str(tmpdir / "test"), "w+") as f:
|
with open(str(tmpdir / "test"), "w+") as f:
|
||||||
f.write("TEST")
|
f.write(content)
|
||||||
body = aiohttp.FormData()
|
body = aiohttp.FormData()
|
||||||
body.add_field("type", "QEMU")
|
body.add_field("type", "QEMU")
|
||||||
body.add_field("file", open(str(tmpdir / "test"), "rb"), content_type="application/iou", filename="test2")
|
body.add_field("file", open(str(tmpdir / "test"), "rb"), content_type="application/iou", filename="test2")
|
||||||
@ -41,6 +43,6 @@ def test_upload(server, tmpdir):
|
|||||||
response = server.post('/upload', api_version=None, body=body, raw=True)
|
response = server.post('/upload', api_version=None, body=body, raw=True)
|
||||||
|
|
||||||
with open(str(tmpdir / "QEMU" / "test2")) as f:
|
with open(str(tmpdir / "QEMU" / "test2")) as f:
|
||||||
assert f.read() == "TEST"
|
assert f.read() == content
|
||||||
|
|
||||||
assert "test2" in response.body.decode("utf-8")
|
assert "test2" in response.body.decode("utf-8")
|
||||||
|
Loading…
Reference in New Issue
Block a user