summaryrefslogtreecommitdiff
path: root/web-server/opendc/api/v2/topologies
diff options
context:
space:
mode:
authorjc0b <j@jc0b.computer>2020-06-30 14:10:34 +0200
committerFabian Mastenbroek <mail.fabianm@gmail.com>2020-08-24 19:37:05 +0200
commit88d8a9cbeae3466230db6bd13120bd4438abbc66 (patch)
treeebe90011283d7035d4c5e37eee1c77cb5df1cda4 /web-server/opendc/api/v2/topologies
parent66f77a1d5d0296d5b2615d046a99e96016dfe5ec (diff)
Topology DELETE progress
Diffstat (limited to 'web-server/opendc/api/v2/topologies')
-rw-r--r--web-server/opendc/api/v2/topologies/topologyId/endpoint.py13
-rw-r--r--web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py7
2 files changed, 19 insertions, 1 deletions
diff --git a/web-server/opendc/api/v2/topologies/topologyId/endpoint.py b/web-server/opendc/api/v2/topologies/topologyId/endpoint.py
index 6c6ab9c2..fb7b1c59 100644
--- a/web-server/opendc/api/v2/topologies/topologyId/endpoint.py
+++ b/web-server/opendc/api/v2/topologies/topologyId/endpoint.py
@@ -14,3 +14,16 @@ def GET(request):
topology.check_user_access(request.google_id, False)
return Response(200, 'Successfully retrieved topology.', topology.obj)
+
+def PUT(request):
+ pass
+
+def DELETE(request):
+ request.check_required_parameters(path={'topologyId': 'int'})
+
+ topology = Topology.from_id(request.params_path['topologyId'])
+
+ topology.check_exists()
+ topology.delete()
+
+ return Response(200, f'Successfully deleted topology.', topology.obj) \ No newline at end of file
diff --git a/web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py b/web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py
index e54052aa..e8cfdd99 100644
--- a/web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py
+++ b/web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py
@@ -43,4 +43,9 @@ PUT /topologies/{topologyId}
'''
DELETE /topologies/{topologyId}
-''' \ No newline at end of file
+'''
+
+def test_delete_topology(client, mocker):
+ mocker.patch.object(DB, 'fetch_one', return_value={'_id': '1'})
+ res = client.delete('/api/v2/topologies/1')
+ assert '200' in res.status \ No newline at end of file