Upload images API

Conflicts:
	requirements.txt
	setup.py
This commit is contained in:
Julien Duponchelle committed 2015-05-10 21:06:31 +02:00
1 parent 61fb641215
commit bb4ebbfe64
9 files changed
+121 -4

No files matched your search

+19
View File
@@ -146,3 +146,22 @@ def test_vms(server, tmpdir, fake_dynamips):
response = server.get("/dynamips/vms")
assert response.status == 200
assert response.json == [{"filename": "7200.bin"}]
def test_upload_vm(server, tmpdir):
with patch("gns3server.modules.Dynamips.get_images_directory", return_value=str(tmpdir),):
response = server.post("/dynamips/vms/test2", body="TEST", raw=True)
assert response.status == 204
with open(str(tmpdir / "test2")) as f:
assert f.read() == "TEST"
def test_upload_vm_permission_denied(server, tmpdir):
with open(str(tmpdir / "test2"), "w+") as f:
f.write("")
os.chmod(str(tmpdir / "test2"), 0)
with patch("gns3server.modules.Dynamips.get_images_directory", return_value=str(tmpdir),):
response = server.post("/dynamips/vms/test2", body="TEST", raw=True)
assert response.status == 409
+23 -3
View File
@@ -20,6 +20,7 @@ import os
import stat
import sys
import uuid
import aiohttp
from tests.utils import asyncio_patch
from unittest.mock import patch, MagicMock, PropertyMock
@@ -311,9 +312,28 @@ def test_get_initial_config_with_config_file(server, project, vm):
assert response.json["content"] == "TEST"
def test_vms(server, vm, tmpdir, fake_iou_bin):
def test_vms(server, tmpdir, fake_iou_bin):
with patch("gns3server.modules.IOU.get_images_directory", return_value=str(tmpdir), example=True):
response = server.get("/iou/vms")
with patch("gns3server.modules.IOU.get_images_directory", return_value=str(tmpdir)):
response = server.get("/iou/vms", example=True)
assert response.status == 200
assert response.json == [{"filename": "iou.bin"}]
def test_upload_vm(server, tmpdir):
with patch("gns3server.modules.IOU.get_images_directory", return_value=str(tmpdir),):
response = server.post("/iou/vms/test2", body="TEST", raw=True)
assert response.status == 204
with open(str(tmpdir / "test2")) as f:
assert f.read() == "TEST"
def test_upload_vm_permission_denied(server, tmpdir):
with open(str(tmpdir / "test2"), "w+") as f:
f.write("")
os.chmod(str(tmpdir / "test2"), 0)
with patch("gns3server.modules.IOU.get_images_directory", return_value=str(tmpdir),):
response = server.post("/iou/vms/test2", body="TEST", raw=True)
assert response.status == 409
+19
View File
@@ -200,3 +200,22 @@ def test_vms(server, tmpdir, fake_qemu_vm):
response = server.get("/qemu/vms")
assert response.status == 200
assert response.json == [{"filename": "linux.img"}]
def test_upload_vm(server, tmpdir):
with patch("gns3server.modules.Qemu.get_images_directory", return_value=str(tmpdir),):
response = server.post("/qemu/vms/test2", body="TEST", raw=True)
assert response.status == 204
with open(str(tmpdir / "test2")) as f:
assert f.read() == "TEST"
def test_upload_vm_permission_denied(server, tmpdir):
with open(str(tmpdir / "test2"), "w+") as f:
f.write("")
os.chmod(str(tmpdir / "test2"), 0)
with patch("gns3server.modules.Qemu.get_images_directory", return_value=str(tmpdir),):
response = server.post("/qemu/vms/test2", body="TEST", raw=True)
assert response.status == 409