Skip to content

Commit 81c16cf

Browse files
committed
test(mock): patch google.auth.default and storage.Client for GCP CI test
1 parent 6a1f979 commit 81c16cf

1 file changed

Lines changed: 11 additions & 12 deletions

File tree

tests/test_gcp_client.py

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
from unittest.mock import patch, MagicMock
22

3+
@patch("clients.gcp_client.default")
34
@patch("clients.gcp_client.storage.Client")
4-
def test_list_gcs_objects(mock_client_class):
5-
mock_client = MagicMock()
6-
mock_bucket = MagicMock()
5+
def test_list_gcs_objects(mock_client_class, mock_default):
6+
# Mock GCP credentials
7+
mock_default.return_value = ("fake-credentials", "test-project")
78

8-
# Explicitly define .name attributes
9+
# Mock GCP storage client and blobs
10+
mock_client = MagicMock()
911
mock_blob1 = MagicMock()
1012
mock_blob1.name = "demo-blob.json"
11-
1213
mock_blob2 = MagicMock()
1314
mock_blob2.name = "config.yaml"
1415

15-
mock_bucket.list_blobs.return_value = [mock_blob1, mock_blob2]
16-
mock_client.get_bucket.return_value = mock_bucket
16+
mock_client.list_blobs.return_value = [mock_blob1, mock_blob2]
1717
mock_client_class.return_value = mock_client
1818

19-
# ✅ Import AFTER patch is active
2019
from clients.gcp_client import list_gcs_objects
21-
objects = list_gcs_objects("demo-gcp")
20+
result = list_gcs_objects("demo-gcp")
2221

23-
assert isinstance(objects, list)
24-
assert "demo-blob.json" in objects
25-
assert "config.yaml" in objects
22+
assert isinstance(result, list)
23+
assert "demo-blob.json" in result
24+
assert "config.yaml" in result

0 commit comments

Comments
 (0)