mirror of
https://github.com/GNS3/gns3-server
synced 2024-11-28 11:18:11 +00:00
Fix IOU tests.
This commit is contained in:
parent
e5c76750b1
commit
0ee87c9110
@ -19,7 +19,6 @@
|
|||||||
import pytest
|
import pytest
|
||||||
from unittest.mock import patch
|
from unittest.mock import patch
|
||||||
import uuid
|
import uuid
|
||||||
import os
|
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
pytestmark = pytest.mark.skipif(sys.platform.startswith("win"), reason="Not supported on Windows")
|
pytestmark = pytest.mark.skipif(sys.platform.startswith("win"), reason="Not supported on Windows")
|
||||||
@ -40,18 +39,17 @@ def iou(port_manager):
|
|||||||
return iou
|
return iou
|
||||||
|
|
||||||
|
|
||||||
def test_get_application_id(loop, project, iou):
|
def test_application_id(loop, project, iou):
|
||||||
vm1_id = str(uuid.uuid4())
|
vm1_id = str(uuid.uuid4())
|
||||||
vm2_id = str(uuid.uuid4())
|
vm2_id = str(uuid.uuid4())
|
||||||
vm3_id = str(uuid.uuid4())
|
vm3_id = str(uuid.uuid4())
|
||||||
loop.run_until_complete(iou.create_node("PC 1", project.id, vm1_id))
|
vm1 = loop.run_until_complete(iou.create_node("PC 1", project.id, vm1_id))
|
||||||
loop.run_until_complete(iou.create_node("PC 2", project.id, vm2_id))
|
vm2 = loop.run_until_complete(iou.create_node("PC 2", project.id, vm2_id))
|
||||||
assert iou.get_application_id(vm1_id) == 1
|
assert vm1.application_id == 1
|
||||||
assert iou.get_application_id(vm1_id) == 1
|
assert vm2.application_id == 2
|
||||||
assert iou.get_application_id(vm2_id) == 2
|
|
||||||
loop.run_until_complete(iou.delete_node(vm1_id))
|
loop.run_until_complete(iou.delete_node(vm1_id))
|
||||||
loop.run_until_complete(iou.create_node("PC 3", project.id, vm3_id))
|
vm3 = loop.run_until_complete(iou.create_node("PC 3", project.id, vm3_id))
|
||||||
assert iou.get_application_id(vm3_id) == 1
|
assert vm3.application_id == 1
|
||||||
|
|
||||||
|
|
||||||
def test_get_application_id_multiple_project(loop, iou):
|
def test_get_application_id_multiple_project(loop, iou):
|
||||||
@ -60,20 +58,20 @@ def test_get_application_id_multiple_project(loop, iou):
|
|||||||
vm3_id = str(uuid.uuid4())
|
vm3_id = str(uuid.uuid4())
|
||||||
project1 = ProjectManager.instance().create_project(project_id=str(uuid.uuid4()))
|
project1 = ProjectManager.instance().create_project(project_id=str(uuid.uuid4()))
|
||||||
project2 = ProjectManager.instance().create_project(project_id=str(uuid.uuid4()))
|
project2 = ProjectManager.instance().create_project(project_id=str(uuid.uuid4()))
|
||||||
loop.run_until_complete(iou.create_node("PC 1", project1.id, vm1_id))
|
vm1 = loop.run_until_complete(iou.create_node("PC 1", project1.id, vm1_id))
|
||||||
loop.run_until_complete(iou.create_node("PC 2", project1.id, vm2_id))
|
vm2 = loop.run_until_complete(iou.create_node("PC 2", project1.id, vm2_id))
|
||||||
loop.run_until_complete(iou.create_node("PC 2", project2.id, vm3_id))
|
vm3 = loop.run_until_complete(iou.create_node("PC 2", project2.id, vm3_id))
|
||||||
assert iou.get_application_id(vm1_id) == 1
|
assert vm1.application_id == 1
|
||||||
assert iou.get_application_id(vm2_id) == 2
|
assert vm2.application_id == 2
|
||||||
assert iou.get_application_id(vm3_id) == 3
|
assert vm3.application_id == 3
|
||||||
|
|
||||||
|
|
||||||
def test_get_application_id_no_id_available(loop, project, iou):
|
def test_get_application_id_no_id_available(loop, project, iou):
|
||||||
with pytest.raises(IOUError):
|
with pytest.raises(IOUError):
|
||||||
for i in range(1, 513):
|
for i in range(1, 513):
|
||||||
node_id = str(uuid.uuid4())
|
node_id = str(uuid.uuid4())
|
||||||
loop.run_until_complete(iou.create_node("PC {}".format(i), project.id, node_id))
|
vm = loop.run_until_complete(iou.create_node("PC {}".format(i), project.id, node_id))
|
||||||
assert iou.get_application_id(node_id) == i
|
assert vm.application_id == i
|
||||||
|
|
||||||
|
|
||||||
def test_get_images_directory(iou, tmpdir):
|
def test_get_images_directory(iou, tmpdir):
|
||||||
|
@ -48,7 +48,7 @@ def manager(port_manager):
|
|||||||
|
|
||||||
@pytest.fixture(scope="function")
|
@pytest.fixture(scope="function")
|
||||||
def vm(project, manager, tmpdir, fake_iou_bin, iourc_file):
|
def vm(project, manager, tmpdir, fake_iou_bin, iourc_file):
|
||||||
vm = IOUVM("test", str(uuid.uuid4()), project, manager)
|
vm = IOUVM("test", str(uuid.uuid4()), project, manager, application_id=1)
|
||||||
config = manager.config.get_section_config("IOU")
|
config = manager.config.get_section_config("IOU")
|
||||||
config["iourc_path"] = iourc_file
|
config["iourc_path"] = iourc_file
|
||||||
manager.config.set_section_config("IOU", config)
|
manager.config.set_section_config("IOU", config)
|
||||||
@ -84,7 +84,7 @@ def test_vm(project, manager):
|
|||||||
|
|
||||||
|
|
||||||
def test_vm_startup_config_content(project, manager):
|
def test_vm_startup_config_content(project, manager):
|
||||||
vm = IOUVM("test", "00010203-0405-0607-0808-0a0b0c0d0e0f", project, manager)
|
vm = IOUVM("test", "00010203-0405-0607-0808-0a0b0c0d0e0f", project, manager, application_id=1)
|
||||||
vm.startup_config_content = "hostname %h"
|
vm.startup_config_content = "hostname %h"
|
||||||
assert vm.name == "test"
|
assert vm.name == "test"
|
||||||
assert vm.startup_config_content == "hostname test"
|
assert vm.startup_config_content == "hostname test"
|
||||||
@ -94,7 +94,6 @@ def test_vm_startup_config_content(project, manager):
|
|||||||
def test_start(loop, vm):
|
def test_start(loop, vm):
|
||||||
|
|
||||||
mock_process = MagicMock()
|
mock_process = MagicMock()
|
||||||
|
|
||||||
vm._check_requirements = AsyncioMagicMock(return_value=True)
|
vm._check_requirements = AsyncioMagicMock(return_value=True)
|
||||||
vm._check_iou_licence = AsyncioMagicMock(return_value=True)
|
vm._check_iou_licence = AsyncioMagicMock(return_value=True)
|
||||||
vm._start_ubridge = AsyncioMagicMock(return_value=True)
|
vm._start_ubridge = AsyncioMagicMock(return_value=True)
|
||||||
|
Loading…
Reference in New Issue
Block a user