Merge ~cgrabowski/maas:fix_unsubscribe_response_serialization into maas:master

Proposed by Christian Grabowski
Status: Merged
Approved by: Christian Grabowski
Approved revision: f6a1cc5ce7089ff302bf8798038869f7e656fd4e
Merge reported by: MAAS Lander
Merged at revision: not available
Proposed branch: ~cgrabowski/maas:fix_unsubscribe_response_serialization
Merge into: maas:master
Diff against target: 34 lines (+11/-1)
2 files modified
src/maasserver/websockets/base.py (+1/-1)
src/maasserver/websockets/handlers/tests/test_machine.py (+10/-0)
Reviewer Review Type Date Requested Status
MAAS Lander Approve
Adam Collard (community) Needs Information
Jack Lloyd-Walters Approve
Review via email: mp+427085@code.launchpad.net

Commit message

ensure type returned on unsubscribe is always list

To post a comment you must log in.
Revision history for this message
Jack Lloyd-Walters (lloydwaltersj) :
review: Approve
Revision history for this message
Adam Collard (adam-collard) :
review: Needs Information
Revision history for this message
Christian Grabowski (cgrabowski) :
Revision history for this message
Jack Lloyd-Walters (lloydwaltersj) :
Revision history for this message
Christian Grabowski (cgrabowski) :
Revision history for this message
MAAS Lander (maas-lander) wrote :

UNIT TESTS
-b fix_unsubscribe_response_serialization lp:~cgrabowski/maas/+git/maas into -b master lp:~maas-committers/maas

STATUS: FAILED
LOG: http://maas-ci.internal:8080/job/maas-tester/118/consoleText
COMMIT: 36974c574d417b3d9e65a2c2de9020237f66e798

review: Needs Fixing
Revision history for this message
MAAS Lander (maas-lander) wrote :

UNIT TESTS
-b fix_unsubscribe_response_serialization lp:~cgrabowski/maas/+git/maas into -b master lp:~maas-committers/maas

STATUS: SUCCESS
COMMIT: f6a1cc5ce7089ff302bf8798038869f7e656fd4e

review: Approve
Revision history for this message
MAAS Lander (maas-lander) wrote :

LANDING
-b fix_unsubscribe_response_serialization lp:~cgrabowski/maas/+git/maas into -b master lp:~maas-committers/maas

STATUS: FAILED BUILD
LOG: http://maas-ci.internal:8080/job/maas-tester/121/consoleText

Update scan failed

At least one of the branches involved have failed to scan. You can manually schedule a rescan if required.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
diff --git a/src/maasserver/websockets/base.py b/src/maasserver/websockets/base.py
index 8787174..a9cd089 100644
--- a/src/maasserver/websockets/base.py
+++ b/src/maasserver/websockets/base.py
@@ -831,7 +831,7 @@ class Handler(metaclass=HandlerMetaclass):
831 if self.cache.get("active_pk") in pks:831 if self.cache.get("active_pk") in pks:
832 del self.cache["active_pk"]832 del self.cache["active_pk"]
833 self.cache["loaded_pks"] = self.cache["loaded_pks"] - pks833 self.cache["loaded_pks"] = self.cache["loaded_pks"] - pks
834 return pks834 return list(pks)
835 else:835 else:
836 raise HandlerValidationError(836 raise HandlerValidationError(
837 f"'{self._meta.pk}' or '{self._meta.bulk_pk}' must be provided in params for unsubscribe"837 f"'{self._meta.pk}' or '{self._meta.bulk_pk}' must be provided in params for unsubscribe"
diff --git a/src/maasserver/websockets/handlers/tests/test_machine.py b/src/maasserver/websockets/handlers/tests/test_machine.py
index 369ae81..9ffcbcd 100644
--- a/src/maasserver/websockets/handlers/tests/test_machine.py
+++ b/src/maasserver/websockets/handlers/tests/test_machine.py
@@ -6291,6 +6291,16 @@ class TestMachineHandlerFilter(MAASServerTestCase):
6291 handler = MachineHandler(admin, {}, None)6291 handler = MachineHandler(admin, {}, None)
6292 self.assertRaises(HandlerValidationError, handler.unsubscribe, {})6292 self.assertRaises(HandlerValidationError, handler.unsubscribe, {})
62936293
6294 def test_unsubscribe_returns_serializable_type(self):
6295 admin = factory.make_admin()
6296 handler = MachineHandler(admin, {}, None)
6297 nodes = [factory.make_Node() for _ in range(3)]
6298 handler.list({})
6299 resp = handler.unsubscribe(
6300 {"system_ids": [node.system_id for node in nodes]}
6301 )
6302 self.assertIsInstance(resp, list)
6303
6294 def test_read_an_unsubscribed_object_subscribes(self):6304 def test_read_an_unsubscribed_object_subscribes(self):
6295 admin = factory.make_admin()6305 admin = factory.make_admin()
6296 handler = MachineHandler(admin, {}, None)6306 handler = MachineHandler(admin, {}, None)

Subscribers

People subscribed via source and target branches