Coverage for tests/tests_requests.py: 100%

20 statements  

« prev     ^ index     » next       coverage.py v7.8.0, created at 2025-04-28 22:05 +0000

1import unittest 

2 

3from requests.exceptions import ConnectionError, Timeout 

4 

5import responses 

6from webapp.api import requests 

7from webapp.api.exceptions import ApiConnectionError, ApiTimeoutError 

8 

9 

10class RequestsCacheTest(unittest.TestCase): 

11 @responses.activate 

12 def test_connection_api_error(self): 

13 test_url = "https://snapcraft.io" 

14 session = requests.Session() 

15 responses.add(responses.GET, test_url, body=ConnectionError()) 

16 with self.assertRaises(ApiConnectionError): 

17 session.get(test_url) 

18 

19 @responses.activate 

20 def test_timeout_api_error(self): 

21 test_url = "https://snapcraft.io" 

22 session = requests.Session() 

23 responses.add(responses.GET, test_url, body=Timeout()) 

24 with self.assertRaises(ApiTimeoutError): 

25 session.get(test_url)