mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-11-06 07:11:13 +02:00
Move appliance and template management code in their own classes.
This commit is contained in:
1 parent
5a3929f01a
commit
8360ae98b1
10 files changed
+340
-224
No files matched your search
@@ -481,14 +481,14 @@ def test_appliances(controller, async_run, tmpdir):
|
||||
json.dump(my_appliance, f)
|
||||
|
||||
with patch("gns3server.config.Config.get_section_config", return_value={"appliances_path": str(tmpdir)}):
|
||||
controller.load_appliances()
|
||||
assert len(controller.appliances) > 0
|
||||
for appliance in controller.appliances.values():
|
||||
controller.appliance_manager.load_appliances()
|
||||
assert len(controller.appliance_manager.appliances) > 0
|
||||
for appliance in controller.appliance_manager.appliances.values():
|
||||
assert appliance.__json__()["status"] != "broken"
|
||||
assert "Alpine Linux" in [c.__json__()["name"] for c in controller.appliances.values()]
|
||||
assert "My Appliance" in [c.__json__()["name"] for c in controller.appliances.values()]
|
||||
assert "Alpine Linux" in [c.__json__()["name"] for c in controller.appliance_manager.appliances.values()]
|
||||
assert "My Appliance" in [c.__json__()["name"] for c in controller.appliance_manager.appliances.values()]
|
||||
|
||||
for c in controller.appliances.values():
|
||||
for c in controller.appliance_manager.appliances.values():
|
||||
j = c.__json__()
|
||||
if j["name"] == "Alpine Linux":
|
||||
assert j["builtin"]
|
||||
@@ -498,23 +498,23 @@ def test_appliances(controller, async_run, tmpdir):
|
||||
|
||||
def test_load_templates(controller):
|
||||
controller._settings = {}
|
||||
controller.load_templates()
|
||||
controller.template_manager.load_templates()
|
||||
|
||||
assert "Cloud" in [template.name for template in controller.templates.values()]
|
||||
assert "VPCS" in [template.name for template in controller.templates.values()]
|
||||
assert "Cloud" in [template.name for template in controller.template_manager.templates.values()]
|
||||
assert "VPCS" in [template.name for template in controller.template_manager.templates.values()]
|
||||
|
||||
for template in controller.templates.values():
|
||||
for template in controller.template_manager.templates.values():
|
||||
if template.name == "VPCS":
|
||||
assert template._settings["properties"] == {"base_script_file": "vpcs_base_config.txt"}
|
||||
|
||||
# UUID should not change when you run again the function
|
||||
for template in controller.templates.values():
|
||||
for template in controller.template_manager.templates.values():
|
||||
if template.name == "Test":
|
||||
qemu_uuid = template.id
|
||||
elif template.name == "Cloud":
|
||||
cloud_uuid = template.id
|
||||
controller.load_templates()
|
||||
for template in controller.templates.values():
|
||||
controller.template_manager.load_templates()
|
||||
for template in controller.template_manager.templates.values():
|
||||
if template.name == "Test":
|
||||
assert qemu_uuid == template.id
|
||||
elif template.name == "Cloud":
|
||||
|
||||
@@ -219,7 +219,7 @@ def test_add_node_from_template(async_run, controller):
|
||||
"template_type": "vpcs",
|
||||
"builtin": False,
|
||||
})
|
||||
controller._templates[template.id] = template
|
||||
controller.template_manager.templates[template.id] = template
|
||||
controller._computes["local"] = compute
|
||||
|
||||
response = MagicMock()
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
|
||||
def test_appliances_list(http_controller, controller, async_run):
|
||||
|
||||
controller.load_appliances()
|
||||
controller.appliance_manager.load_appliances()
|
||||
response = http_controller.get("/appliances", example=True)
|
||||
assert response.status == 200
|
||||
assert len(response.json) > 0
|
||||
@@ -28,8 +28,8 @@ from gns3server.controller.template import Template
|
||||
def test_template_list(http_controller, controller):
|
||||
|
||||
id = str(uuid.uuid4())
|
||||
controller.load_templates()
|
||||
controller._templates[id] = Template(id, {
|
||||
controller.template_manager.load_templates()
|
||||
controller.template_manager._templates[id] = Template(id, {
|
||||
"template_type": "qemu",
|
||||
"category": 0,
|
||||
"name": "test",
|
||||
@@ -59,7 +59,7 @@ def test_template_create_without_id(http_controller, controller):
|
||||
assert response.status == 201
|
||||
assert response.route == "/templates"
|
||||
assert response.json["template_id"] is not None
|
||||
assert len(controller.templates) == 1
|
||||
assert len(controller.template_manager._templates) == 1
|
||||
|
||||
|
||||
def test_template_create_with_id(http_controller, controller):
|
||||
@@ -79,7 +79,7 @@ def test_template_create_with_id(http_controller, controller):
|
||||
assert response.status == 201
|
||||
assert response.route == "/templates"
|
||||
assert response.json["template_id"] is not None
|
||||
assert len(controller.templates) == 1
|
||||
assert len(controller.template_manager._templates) == 1
|
||||
|
||||
|
||||
def test_template_create_wrong_type(http_controller, controller):
|
||||
@@ -97,7 +97,7 @@ def test_template_create_wrong_type(http_controller, controller):
|
||||
|
||||
response = http_controller.post("/templates", params)
|
||||
assert response.status == 400
|
||||
assert len(controller.templates) == 0
|
||||
assert len(controller.template_manager._templates) == 0
|
||||
|
||||
|
||||
def test_template_get(http_controller, controller):
|
||||
@@ -169,14 +169,14 @@ def test_template_delete(http_controller, controller):
|
||||
|
||||
response = http_controller.get("/templates")
|
||||
assert len(response.json) == 1
|
||||
assert len(controller.templates) == 1
|
||||
assert len(controller.template_manager._templates) == 1
|
||||
|
||||
response = http_controller.delete("/templates/{}".format(template_id), example=True)
|
||||
assert response.status == 204
|
||||
|
||||
response = http_controller.get("/templates")
|
||||
assert len(response.json) == 0
|
||||
assert len(controller.templates) == 0
|
||||
assert len(controller.template_manager._templates) == 0
|
||||
|
||||
|
||||
def test_template_duplicate(http_controller, controller):
|
||||
@@ -205,7 +205,7 @@ def test_template_duplicate(http_controller, controller):
|
||||
|
||||
response = http_controller.get("/templates")
|
||||
assert len(response.json) == 2
|
||||
assert len(controller.templates) == 2
|
||||
assert len(controller.template_manager._templates) == 2
|
||||
|
||||
|
||||
def test_c7200_dynamips_template_create(http_controller):
|
||||
@@ -953,7 +953,7 @@ def project(http_controller, async_run):
|
||||
def test_create_node_from_template(http_controller, controller, project, compute):
|
||||
|
||||
id = str(uuid.uuid4())
|
||||
controller._templates = {id: Template(id, {
|
||||
controller.template_manager._templates = {id: Template(id, {
|
||||
"template_type": "qemu",
|
||||
"category": 0,
|
||||
"name": "test",
|
||||
|
||||
Reference in new issue
Block a user