mirror of
https://github.com/kevin1024/vcrpy.git
synced 2025-12-09 17:15:35 +00:00
Format with line length 110 to match flake8 make black part of linting check Update travis spec for updated black requirements Add diff output for black on failure update changelog
45 lines
1.8 KiB
Python
45 lines
1.8 KiB
Python
"""Stubs for boto3"""
|
|
import six
|
|
|
|
try:
|
|
# boto using awsrequest
|
|
from botocore.awsrequest import AWSHTTPConnection as HTTPConnection
|
|
from botocore.awsrequest import AWSHTTPSConnection as VerifiedHTTPSConnection
|
|
|
|
except ImportError: # pragma: nocover
|
|
# boto using vendored requests
|
|
# urllib3 defines its own HTTPConnection classes, which boto3 goes ahead and assumes
|
|
# you're using. It includes some polyfills for newer features missing in older pythons.
|
|
try:
|
|
from urllib3.connectionpool import HTTPConnection, VerifiedHTTPSConnection
|
|
except ImportError: # pragma: nocover
|
|
from requests.packages.urllib3.connectionpool import HTTPConnection, VerifiedHTTPSConnection
|
|
|
|
from ..stubs import VCRHTTPConnection, VCRHTTPSConnection
|
|
|
|
|
|
class VCRRequestsHTTPConnection(VCRHTTPConnection, HTTPConnection):
|
|
_baseclass = HTTPConnection
|
|
|
|
|
|
class VCRRequestsHTTPSConnection(VCRHTTPSConnection, VerifiedHTTPSConnection):
|
|
_baseclass = VerifiedHTTPSConnection
|
|
|
|
def __init__(self, *args, **kwargs):
|
|
if six.PY3:
|
|
kwargs.pop("strict", None) # apparently this is gone in py3
|
|
|
|
# need to temporarily reset here because the real connection
|
|
# inherits from the thing that we are mocking out. Take out
|
|
# the reset if you want to see what I mean :)
|
|
from vcr.patch import force_reset
|
|
|
|
with force_reset():
|
|
self.real_connection = self._baseclass(*args, **kwargs)
|
|
# Make sure to set those attributes as it seems `AWSHTTPConnection` does not
|
|
# set them, making the connection to fail !
|
|
self.real_connection.assert_hostname = kwargs.get("assert_hostname", False)
|
|
self.real_connection.cert_reqs = kwargs.get("cert_reqs", "CERT_NONE")
|
|
|
|
self._sock = None
|