diff options
Diffstat (limited to 'web-server/opendc/api/v2')
| -rw-r--r-- | web-server/opendc/api/v2/topologies/topologyId/endpoint.py | 11 | ||||
| -rw-r--r-- | web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py | 41 |
2 files changed, 22 insertions, 30 deletions
diff --git a/web-server/opendc/api/v2/topologies/topologyId/endpoint.py b/web-server/opendc/api/v2/topologies/topologyId/endpoint.py index 824bb12b..a4f71ed6 100644 --- a/web-server/opendc/api/v2/topologies/topologyId/endpoint.py +++ b/web-server/opendc/api/v2/topologies/topologyId/endpoint.py @@ -6,7 +6,6 @@ from opendc.models.topology import Topology from opendc.util.rest import Response - def GET(request): """Get this Topology.""" @@ -19,15 +18,10 @@ def GET(request): return Response(200, 'Successfully retrieved topology.', topology.obj) + def PUT(request): """Update this topology""" - request.check_required_parameters(path={'topologyId': 'int'}, - body={ - 'topology': { - 'name': 'string', - 'rooms': {} - } - }) + request.check_required_parameters(path={'topologyId': 'int'}, body={'topology': {'name': 'string', 'rooms': {}}}) topology = Topology.from_id(request.params_path['topologyId']) topology.check_exists() @@ -41,6 +35,7 @@ def PUT(request): return Response(200, 'Successfully updated topology.', topology.obj) + def DELETE(request): """Delete this topology""" request.check_required_parameters(path={'topologyId': 'int'}) 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 ac0d02aa..fa88c497 100644 --- a/web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py +++ b/web-server/opendc/api/v2/topologies/topologyId/test_endpoint.py @@ -49,18 +49,15 @@ def test_get_topology_no_authorizations(client, mocker): PUT /topologies/{topologyId} ''' + def test_update_topology_missing_parameter(client): assert '400' in client.put('/api/v2/topologies/1').status + def test_update_topology_non_existent(client, mocker): mocker.patch.object(DB, 'fetch_one', return_value=None) - assert '404' in client.put('/api/v2/topologies/1', - json={ - 'topology': { - 'name': 'test_topology', - 'rooms': {} - } - }).status + assert '404' in client.put('/api/v2/topologies/1', json={'topology': {'name': 'test_topology', 'rooms': {}}}).status + def test_update_topology_not_authorized(client, mocker): mocker.patch.object(DB, @@ -74,13 +71,13 @@ def test_update_topology_not_authorized(client, mocker): }] }) mocker.patch.object(DB, 'update', return_value={}) - assert '403' in client.put('/api/v2/topologies/1', - json={ - 'topology': { - 'name': 'updated_topology', - 'rooms': {} - } - }).status + assert '403' in client.put('/api/v2/topologies/1', json={ + 'topology': { + 'name': 'updated_topology', + 'rooms': {} + } + }).status + def test_update_topology(client, mocker): mocker.patch.object(DB, @@ -95,19 +92,19 @@ def test_update_topology(client, mocker): }) mocker.patch.object(DB, 'update', return_value={}) - assert '200' in client.put('/api/v2/topologies/1', - json={ - 'topology': { - 'name': 'updated_topology', - 'rooms': {} - } - }).status + assert '200' in client.put('/api/v2/topologies/1', json={ + 'topology': { + 'name': 'updated_topology', + 'rooms': {} + } + }).status ''' DELETE /topologies/{topologyId} ''' + def test_delete_topology(client, mocker): mocker.patch.object(DB, 'fetch_one', @@ -126,7 +123,7 @@ def test_delete_topology(client, mocker): res = client.delete('/api/v2/topologies/1') assert '200' in res.status + def test_delete_nonexistent_topology(client, mocker): mocker.patch.object(DB, 'fetch_one', return_value=None) assert '404' in client.delete('/api/v2/topologies/1').status - |
