Skip to content

Commit a8a8f89

Browse files
committed
test: Update unit tests for deleting gateway with resources
#1467 Branch: ResourceCacheInvalidation-1467 Signed-off-by: Gabe Goodhart <ghart@us.ibm.com>
1 parent e6164cd commit a8a8f89

File tree

1 file changed

+22
-5
lines changed

1 file changed

+22
-5
lines changed

tests/unit/mcpgateway/test_main.py

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,6 @@ def camel_to_snake_tool(d: dict) -> dict:
147147
"url": "http://example.com",
148148
"description": "A test gateway",
149149
"transport": "SSE",
150-
"auth_type": "none",
151150
"created_at": "2023-01-01T00:00:00+00:00",
152151
"updated_at": "2023-01-01T00:00:00+00:00",
153152
"enabled": True,
@@ -947,14 +946,30 @@ def test_update_gateway_endpoint(self, mock_update, test_client, auth_headers):
947946
mock_update.assert_called_once()
948947

949948
@patch("mcpgateway.main.gateway_service.delete_gateway")
950-
def test_delete_gateway_endpoint(self, mock_delete, test_client, auth_headers):
951-
"""Test deleting a gateway."""
949+
@patch("mcpgateway.main.gateway_service.get_gateway")
950+
def test_delete_gateway_endpoint_no_resources(self, mock_get, mock_delete, test_client, auth_headers):
951+
"""Test deleting a gateway that doesn't have resources."""
952952
mock_delete.return_value = None
953+
mock_get.return_value.capabilities = {}
953954
response = test_client.delete("/gateways/1", headers=auth_headers)
954955
assert response.status_code == 200
955956
assert response.json()["status"] == "success"
956957
mock_delete.assert_called_once()
957958

959+
@patch("mcpgateway.main.gateway_service.delete_gateway")
960+
@patch("mcpgateway.main.gateway_service.get_gateway")
961+
@patch("mcpgateway.main.invalidate_resource_cache")
962+
def test_delete_gateway_endpoint_with_resources(self, mock_invalidate_cache, mock_get, mock_delete, test_client, auth_headers):
963+
"""Test deleting a gateway that does have resources."""
964+
mock_delete.return_value = None
965+
mock_get.return_value = MagicMock()
966+
mock_get.return_value.capabilities = {"resources": {"some": "thing"}}
967+
response = test_client.delete("/gateways/1", headers=auth_headers)
968+
assert response.status_code == 200
969+
assert response.json()["status"] == "success"
970+
mock_delete.assert_called_once()
971+
mock_invalidate_cache.assert_called_once()
972+
958973
@patch("mcpgateway.main.gateway_service.toggle_gateway_status")
959974
def test_toggle_gateway_status(self, mock_toggle, test_client, auth_headers):
960975
"""Test toggling gateway active/inactive status."""
@@ -1006,9 +1021,11 @@ def test_update_gateway_endpoint(self, mock_update, test_client, auth_headers):
10061021
mock_update.assert_called_once()
10071022

10081023
@patch("mcpgateway.main.gateway_service.delete_gateway")
1009-
def test_delete_gateway_endpoint(self, mock_delete, test_client, auth_headers):
1024+
@patch("mcpgateway.main.gateway_service.get_gateway")
1025+
def test_delete_gateway_endpoint(self, mock_get, mock_delete, test_client, auth_headers):
10101026
"""Test deleting a gateway."""
10111027
mock_delete.return_value = None
1028+
mock_get.return_value.capabilities = {}
10121029
response = test_client.delete("/gateways/1", headers=auth_headers)
10131030
assert response.status_code == 200
10141031
assert response.json()["status"] == "success"
@@ -1220,7 +1237,7 @@ def test_sse_endpoint(self, mock_transport_class, mock_respond, mock_add_session
12201237
mock_transport.create_sse_response.return_value = MagicMock()
12211238
mock_transport_class.return_value = mock_transport
12221239

1223-
response = test_client.get("/sse", headers=auth_headers)
1240+
test_client.get("/sse", headers=auth_headers)
12241241

12251242
# Note: This test may need adjustment based on actual SSE implementation
12261243
# The exact assertion will depend on how SSE responses are structured

0 commit comments

Comments
 (0)