Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.11/site-packages/httpretty/errors.py: 71%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

17 statements  

1# #!/usr/bin/env python 

2# -*- coding: utf-8 -*- 

3# 

4# <HTTPretty - HTTP client mock for Python> 

5# Copyright (C) <2011-2021> Gabriel Falcão <gabriel@nacaolivre.org> 

6# 

7# Permission is hereby granted, free of charge, to any person 

8# obtaining a copy of this software and associated documentation 

9# files (the "Software"), to deal in the Software without 

10# restriction, including without limitation the rights to use, 

11# copy, modify, merge, publish, distribute, sublicense, and/or sell 

12# copies of the Software, and to permit persons to whom the 

13# Software is furnished to do so, subject to the following 

14# conditions: 

15# 

16# The above copyright notice and this permission notice shall be 

17# included in all copies or substantial portions of the Software. 

18# 

19# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 

20# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 

21# OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 

22# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 

23# HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 

24# WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 

25# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 

26# OTHER DEALINGS IN THE SOFTWARE. 

27from __future__ import unicode_literals 

28import json 

29 

30class HTTPrettyError(Exception): 

31 pass 

32 

33 

34class UnmockedError(HTTPrettyError): 

35 def __init__(self, message='Failed to handle network request', request=None, address=None): 

36 hint = 'Tip: You could try setting (allow_net_connect=True) to allow unregistered requests through a real TCP connection in addition to (verbose=True) to debug the issue.' 

37 if request: 

38 headers = json.dumps(dict(request.headers), indent=2) 

39 message = '{message}.\n\nIntercepted unknown {request.method} request {request.url}\n\nWith headers {headers}'.format(**locals()) 

40 

41 if isinstance(address, (tuple, list)): 

42 address = ":".join(map(str, address)) 

43 

44 if address: 

45 hint = 'address: {address} | {hint}'.format(**locals()) 

46 

47 self.request = request 

48 super(UnmockedError, self).__init__('{message}\n\n{hint}'.format(**locals()))