From 7eaf875466e6be0361c0e24a93a63eebca410016 Mon Sep 17 00:00:00 2001 From: Robert Jenkin Date: Tue, 13 Oct 2026 05:34:35 +0000 Subject: [PATCH] Fix CloudSigma v2 tag collection route and mocked GET coverage --- libcloud/compute/drivers/cloudsigma.py | 2 +- libcloud/test/compute/test_cloudsigma_v2_0.py | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/libcloud/compute/drivers/cloudsigma.py b/libcloud/compute/drivers/cloudsigma.py index 00c2057d50..0bb2b48371 100644 --- a/libcloud/compute/drivers/cloudsigma.py +++ b/libcloud/compute/drivers/cloudsigma.py @@ -1931,7 +1931,7 @@ def ex_list_tags(self): :rtype: ``list`` of :class:`.CloudSigmaTag` objects """ - action = "/tags/detail/" + action = "/tags/" response = self.connection.request(action=action, method="GET").object tags = [self._to_tag(data=item) for item in response["objects"]] diff --git a/libcloud/test/compute/test_cloudsigma_v2_0.py b/libcloud/test/compute/test_cloudsigma_v2_0.py index 2d29ee2118..a7eb489b07 100644 --- a/libcloud/test/compute/test_cloudsigma_v2_0.py +++ b/libcloud/test/compute/test_cloudsigma_v2_0.py @@ -682,10 +682,13 @@ def _api_2_0_fwpolicies_0e339282_0cb5_41ac_a9db_727fb62ff2dc(self, method, url, return (httplib.NO_CONTENT, body, {}, httplib.responses[httplib.NO_CONTENT]) def _api_2_0_tags_detail(self, method, url, body, headers): - body = self.fixtures.load("tags_detail.json") - return (httplib.OK, body, {}, httplib.responses[httplib.OK]) + raise AssertionError("Tag collection must use /tags/ rather than /tags/detail/") def _api_2_0_tags(self, method, url, body, headers): + if method == "GET": + assert url.split("?")[0].rstrip("/") == "/api/2.0/tags" + body = self.fixtures.load("tags_detail.json") + return (httplib.OK, body, {}, httplib.responses[httplib.OK]) if method == "POST": body = self.fixtures.load("tags_create.json") return (httplib.CREATED, body, {}, httplib.responses[httplib.CREATED])