mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-11-03 05:51:15 +02:00
7 files changed
+118
-28
No files matched your search
@@ -23,7 +23,7 @@ import pytest
|
||||
import aiohttp
|
||||
import zipfile
|
||||
from unittest.mock import MagicMock
|
||||
from tests.utils import AsyncioMagicMock
|
||||
from tests.utils import AsyncioMagicMock, asyncio_patch
|
||||
from unittest.mock import patch
|
||||
from uuid import uuid4
|
||||
|
||||
@@ -349,7 +349,9 @@ def test_dump():
|
||||
def test_open_close(async_run, controller):
|
||||
project = Project(controller=controller, status="closed", name="Test")
|
||||
assert project.status == "closed"
|
||||
project.start_all = AsyncioMagicMock()
|
||||
async_run(project.open())
|
||||
assert not project.start_all.called
|
||||
assert project.status == "opened"
|
||||
controller._notification = MagicMock()
|
||||
async_run(project.close())
|
||||
@@ -357,6 +359,14 @@ def test_open_close(async_run, controller):
|
||||
controller.notification.emit.assert_any_call("project.closed", project.__json__())
|
||||
|
||||
|
||||
def test_open_auto_start(async_run, controller):
|
||||
project = Project(controller=controller, status="closed", name="Test")
|
||||
project.auto_start = True
|
||||
project.start_all = AsyncioMagicMock()
|
||||
async_run(project.open())
|
||||
assert project.start_all.called
|
||||
|
||||
|
||||
def test_is_running(project, async_run, node):
|
||||
"""
|
||||
If a node is started or paused return True
|
||||
@@ -451,3 +461,49 @@ def test_snapshot(project, async_run):
|
||||
# Raise a conflict if name is already use
|
||||
with pytest.raises(aiohttp.web_exceptions.HTTPConflict):
|
||||
snapshot = async_run(project.snapshot("test1"))
|
||||
|
||||
|
||||
def test_start_all(project, async_run):
|
||||
compute = MagicMock()
|
||||
compute.id = "local"
|
||||
response = MagicMock()
|
||||
response.json = {"console": 2048}
|
||||
compute.post = AsyncioMagicMock(return_value=response)
|
||||
|
||||
for node_i in range(0, 10):
|
||||
async_run(project.add_node(compute, "test", None, node_type="vpcs", properties={"startup_config": "test.cfg"}))
|
||||
|
||||
compute.post = AsyncioMagicMock()
|
||||
async_run(project.start_all())
|
||||
assert len(compute.post.call_args_list) == 10
|
||||
|
||||
|
||||
def test_stop_all(project, async_run):
|
||||
compute = MagicMock()
|
||||
compute.id = "local"
|
||||
response = MagicMock()
|
||||
response.json = {"console": 2048}
|
||||
compute.post = AsyncioMagicMock(return_value=response)
|
||||
|
||||
for node_i in range(0, 10):
|
||||
async_run(project.add_node(compute, "test", None, node_type="vpcs", properties={"startup_config": "test.cfg"}))
|
||||
|
||||
compute.post = AsyncioMagicMock()
|
||||
async_run(project.stop_all())
|
||||
assert len(compute.post.call_args_list) == 10
|
||||
|
||||
|
||||
def test_suspend_all(project, async_run):
|
||||
compute = MagicMock()
|
||||
compute.id = "local"
|
||||
response = MagicMock()
|
||||
response.json = {"console": 2048}
|
||||
compute.post = AsyncioMagicMock(return_value=response)
|
||||
|
||||
for node_i in range(0, 10):
|
||||
async_run(project.add_node(compute, "test", None, node_type="vpcs", properties={"startup_config": "test.cfg"}))
|
||||
|
||||
compute.post = AsyncioMagicMock()
|
||||
async_run(project.suspend_all())
|
||||
assert len(compute.post.call_args_list) == 10
|
||||
|
||||
@@ -35,6 +35,8 @@ def test_project_to_topology_empty(tmpdir):
|
||||
"project_id": project.id,
|
||||
"name": "Test",
|
||||
"auto_start": False,
|
||||
"auto_close": False,
|
||||
"auto_open": False,
|
||||
"revision": 5,
|
||||
"topology": {
|
||||
"nodes": [],
|
||||
|
||||
Reference in new issue
Block a user