From 53cab4e1152f1140f52b59f42210ec45861c4d33 Mon Sep 17 00:00:00 2001 From: Prafful <praffulsharma1230@gmail.com> Date: Thu, 12 Dec 2024 21:56:01 +0530 Subject: [PATCH 1/3] added filter for deleted=false --- care/facility/api/viewsets/camera_preset.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/care/facility/api/viewsets/camera_preset.py b/care/facility/api/viewsets/camera_preset.py index bfb168834b..f6143d6291 100644 --- a/care/facility/api/viewsets/camera_preset.py +++ b/care/facility/api/viewsets/camera_preset.py @@ -38,7 +38,7 @@ def get_serializer_context(self): class CameraPresetViewSet(GenericViewSet, ListModelMixin): serializer_class = CameraPresetSerializer - queryset = CameraPreset.objects.all().select_related( + queryset = CameraPreset.objects.filter(asset_bed__deleted=False).select_related( "asset_bed", "created_by", "updated_by" ) lookup_field = "external_id" From f30ac26536bd1c7fe28be6b0ae717fba6a35f461 Mon Sep 17 00:00:00 2001 From: Prafful <praffulsharma1230@gmail.com> Date: Thu, 12 Dec 2024 22:30:41 +0530 Subject: [PATCH 2/3] added tests --- care/facility/tests/test_assetbed_api.py | 43 ++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/care/facility/tests/test_assetbed_api.py b/care/facility/tests/test_assetbed_api.py index 2129ef1a00..a6bd1cfc95 100644 --- a/care/facility/tests/test_assetbed_api.py +++ b/care/facility/tests/test_assetbed_api.py @@ -425,6 +425,49 @@ def setUpTestData(cls): def get_base_url(self, asset_bed_id=None): return f"/api/v1/assetbed/{asset_bed_id or self.asset_bed1.external_id}/camera_presets/" + + def test_list_bed_with_deleted_assetbed(self): + # self.asset_bed1.update(deleted=) + res=self.client.post( + self.get_base_url(self.asset_bed1.external_id), + { + "name": "Preset with proper position", + "position": { + "x": 1.0, + "y": 1.0, + "zoom": 1.0, + }, + }, + format="json", + ) + self.assertEqual(res.status_code, status.HTTP_201_CREATED) + res=self.client.post( + self.get_base_url(self.asset_bed2.external_id), + { + "name": "Preset with proper position 2", + "position": { + "x": 1.0, + "y": 1.0, + "zoom": 1.0, + }, + }, + format="json", + ) + self.assertEqual(res.status_code, status.HTTP_201_CREATED) + + res = self.client.get( + f"/api/v1/bed/{self.bed.external_id}/camera_presets/" + ) + self.assertEqual(len(res.json()["results"]),2) + + self.asset_bed1.delete() + self.asset_bed1.refresh_from_db() + res = self.client.get( + f"/api/v1/bed/{self.bed.external_id}/camera_presets/" + ) + self.assertEqual(len(res.json()["results"]),1) + + def test_create_camera_preset_without_position(self): res = self.client.post( self.get_base_url(), From e5f5edb223df429aeb72a22e200ced4083a9eede Mon Sep 17 00:00:00 2001 From: Prafful <praffulsharma1230@gmail.com> Date: Thu, 12 Dec 2024 22:41:51 +0530 Subject: [PATCH 3/3] cleaning comments --- care/facility/tests/test_assetbed_api.py | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/care/facility/tests/test_assetbed_api.py b/care/facility/tests/test_assetbed_api.py index a6bd1cfc95..2502c9bd0b 100644 --- a/care/facility/tests/test_assetbed_api.py +++ b/care/facility/tests/test_assetbed_api.py @@ -425,10 +425,8 @@ def setUpTestData(cls): def get_base_url(self, asset_bed_id=None): return f"/api/v1/assetbed/{asset_bed_id or self.asset_bed1.external_id}/camera_presets/" - def test_list_bed_with_deleted_assetbed(self): - # self.asset_bed1.update(deleted=) - res=self.client.post( + res = self.client.post( self.get_base_url(self.asset_bed1.external_id), { "name": "Preset with proper position", @@ -441,7 +439,7 @@ def test_list_bed_with_deleted_assetbed(self): format="json", ) self.assertEqual(res.status_code, status.HTTP_201_CREATED) - res=self.client.post( + res = self.client.post( self.get_base_url(self.asset_bed2.external_id), { "name": "Preset with proper position 2", @@ -455,18 +453,13 @@ def test_list_bed_with_deleted_assetbed(self): ) self.assertEqual(res.status_code, status.HTTP_201_CREATED) - res = self.client.get( - f"/api/v1/bed/{self.bed.external_id}/camera_presets/" - ) - self.assertEqual(len(res.json()["results"]),2) + res = self.client.get(f"/api/v1/bed/{self.bed.external_id}/camera_presets/") + self.assertEqual(len(res.json()["results"]), 2) self.asset_bed1.delete() self.asset_bed1.refresh_from_db() - res = self.client.get( - f"/api/v1/bed/{self.bed.external_id}/camera_presets/" - ) - self.assertEqual(len(res.json()["results"]),1) - + res = self.client.get(f"/api/v1/bed/{self.bed.external_id}/camera_presets/") + self.assertEqual(len(res.json()["results"]), 1) def test_create_camera_preset_without_position(self): res = self.client.post(