mirror of
https://github.com/GNS3/gns3-server.git
synced 2026-11-03 05:51:15 +02:00
Prevent multiple projects with the same ID to be created.
This commit is contained in:
1 parent
349d9d4540
commit
54fc873be5
10 files changed
+61
-27
No files matched your search
@@ -27,14 +27,14 @@ from tests.utils import asyncio_patch
|
||||
def test_create_project_with_path(server, tmpdir):
|
||||
with patch("gns3server.config.Config.get_section_config", return_value={"local": True}):
|
||||
response = server.post("/projects", {"path": str(tmpdir)})
|
||||
assert response.status == 200
|
||||
assert response.status == 201
|
||||
assert response.json["path"] == str(tmpdir)
|
||||
|
||||
|
||||
def test_create_project_without_dir(server):
|
||||
query = {}
|
||||
response = server.post("/projects", query, example=True)
|
||||
assert response.status == 200
|
||||
assert response.status == 201
|
||||
assert response.json["project_id"] is not None
|
||||
assert response.json["temporary"] is False
|
||||
|
||||
@@ -42,7 +42,7 @@ def test_create_project_without_dir(server):
|
||||
def test_create_temporary_project(server):
|
||||
query = {"temporary": True}
|
||||
response = server.post("/projects", query)
|
||||
assert response.status == 200
|
||||
assert response.status == 201
|
||||
assert response.json["project_id"] is not None
|
||||
assert response.json["temporary"] is True
|
||||
|
||||
@@ -50,18 +50,18 @@ def test_create_temporary_project(server):
|
||||
def test_create_project_with_uuid(server):
|
||||
query = {"project_id": "00010203-0405-0607-0809-0a0b0c0d0e0f"}
|
||||
response = server.post("/projects", query)
|
||||
assert response.status == 200
|
||||
assert response.status == 201
|
||||
assert response.json["project_id"] == "00010203-0405-0607-0809-0a0b0c0d0e0f"
|
||||
|
||||
|
||||
def test_show_project(server):
|
||||
query = {"project_id": "00010203-0405-0607-0809-0a0b0c0d0e0f", "temporary": False}
|
||||
query = {"project_id": "00010203-0405-0607-0809-0a0b0c0d0e02", "temporary": False}
|
||||
response = server.post("/projects", query)
|
||||
assert response.status == 200
|
||||
response = server.get("/projects/00010203-0405-0607-0809-0a0b0c0d0e0f", example=True)
|
||||
assert response.status == 201
|
||||
response = server.get("/projects/00010203-0405-0607-0809-0a0b0c0d0e02", example=True)
|
||||
assert len(response.json.keys()) == 4
|
||||
assert len(response.json["location"]) > 0
|
||||
assert response.json["project_id"] == "00010203-0405-0607-0809-0a0b0c0d0e0f"
|
||||
assert response.json["project_id"] == "00010203-0405-0607-0809-0a0b0c0d0e02"
|
||||
assert response.json["temporary"] is False
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ def test_show_project_invalid_uuid(server):
|
||||
def test_update_temporary_project(server):
|
||||
query = {"temporary": True}
|
||||
response = server.post("/projects", query)
|
||||
assert response.status == 200
|
||||
assert response.status == 201
|
||||
query = {"temporary": False}
|
||||
response = server.put("/projects/{project_id}".format(project_id=response.json["project_id"]), query, example=True)
|
||||
assert response.status == 200
|
||||
@@ -84,7 +84,7 @@ def test_update_path_project(server, tmpdir):
|
||||
|
||||
with patch("gns3server.config.Config.get_section_config", return_value={"local": True}):
|
||||
response = server.post("/projects", {})
|
||||
assert response.status == 200
|
||||
assert response.status == 201
|
||||
query = {"path": str(tmpdir)}
|
||||
response = server.put("/projects/{project_id}".format(project_id=response.json["project_id"]), query, example=True)
|
||||
assert response.status == 200
|
||||
@@ -95,7 +95,7 @@ def test_update_path_project_non_local(server, tmpdir):
|
||||
|
||||
with patch("gns3server.config.Config.get_section_config", return_value={"local": False}):
|
||||
response = server.post("/projects", {})
|
||||
assert response.status == 200
|
||||
assert response.status == 201
|
||||
query = {"path": str(tmpdir)}
|
||||
response = server.put("/projects/{project_id}".format(project_id=response.json["project_id"]), query, example=True)
|
||||
assert response.status == 403
|
||||
@@ -132,6 +132,6 @@ def test_close_project(server, project):
|
||||
assert mock.called
|
||||
|
||||
|
||||
def test_close_project_invalid_uuid(server, project):
|
||||
def test_close_project_invalid_uuid(server):
|
||||
response = server.post("/projects/{project_id}/close".format(project_id=uuid.uuid4()))
|
||||
assert response.status == 404
|
||||
Reference in new issue
Block a user