Coverage for tests/endpoints/test_brand_store.py: 100%

22 statements  

« prev     ^ index     » next       coverage.py v7.10.2, created at 2025-08-05 22:06 +0000

1from unittest.mock import patch, Mock 

2from canonicalwebteam.exceptions import StoreApiResponseErrorList 

3 

4from tests.endpoints.endpoint_testing import TestModelServiceEndpoints 

5 

6 

7class TestGetBrandStoreEndpoint(TestModelServiceEndpoints): 

8 @patch( 

9 "canonicalwebteam.store_api.dashboard.Dashboard.get_store", 

10 Mock(return_value={"brand-id": "BrandName"}), 

11 ) 

12 @patch("canonicalwebteam.store_api.publishergw.PublisherGW.get_brand") 

13 def test_successful_get_brand_store(self, mock_get_brand): 

14 mock_get_brand.return_value = {"name": "BrandName"} 

15 

16 response = self.client.get("/api/store/1/brand") 

17 data = response.get_json() 

18 

19 self.assertEqual(response.status_code, 200) 

20 self.assertTrue(data["success"]) 

21 self.assertEqual(data["data"], {"name": "BrandName"}) 

22 

23 @patch( 

24 "canonicalwebteam.store_api.dashboard.Dashboard.get_store", 

25 Mock(return_value={"brand-id": "BrandName"}), 

26 ) 

27 @patch("canonicalwebteam.store_api.publishergw.PublisherGW.get_brand") 

28 def test_failed_get_brand_store(self, mock_get_brand): 

29 mock_get_brand.side_effect = StoreApiResponseErrorList( 

30 "error", 400, [{"message": "error"}] 

31 ) 

32 

33 response = self.client.get("/api/store/1/brand") 

34 data = response.get_json() 

35 

36 self.assertEqual(response.status_code, 200) 

37 self.assertFalse(data["success"]) 

38 self.assertEqual(data["message"], "error")