mirror of
https://github.com/kevin1024/vcrpy.git
synced 2025-12-08 16:53:23 +00:00
fix real connection on boto3 stub, adding not set parameters manually
Set `assert_hostname` and `cert_reqs` real connection attributes with default values.
This commit is contained in:
@@ -8,10 +8,10 @@ import botocore # NOQA
|
||||
import vcr # NOQA
|
||||
|
||||
ses = boto3.Session(
|
||||
aws_access_key_id=os.environ['AWS_ACCESS_KEY_ID'],
|
||||
aws_secret_access_key=os.environ['AWS_SECRET_ACCESS_KEY'],
|
||||
aws_access_key_id=os.environ.get('AWS_ACCESS_KEY_ID', "default"),
|
||||
aws_secret_access_key=os.environ.get('AWS_SECRET_ACCESS_KEY', "default"),
|
||||
aws_session_token=None,
|
||||
region_name=os.environ['AWS_DEFAULT_REGION'],
|
||||
region_name=os.environ.get('AWS_DEFAULT_REGION', "default"),
|
||||
# botocore_session=None,
|
||||
# profile_name=None
|
||||
)
|
||||
@@ -87,9 +87,9 @@ def test_boto_medium_difficulty(tmpdir):
|
||||
def test_boto_hardcore_mode(tmpdir):
|
||||
with vcr.use_cassette(str(tmpdir.join('boto3-hardcore.yml'))):
|
||||
ses = boto3.Session(
|
||||
aws_access_key_id=os.environ['AWS_ACCESS_KEY_ID'],
|
||||
aws_secret_access_key=os.environ['AWS_SECRET_ACCESS_KEY'],
|
||||
region_name=os.environ['AWS_DEFAULT_REGION'],
|
||||
aws_access_key_id=os.environ.get('AWS_ACCESS_KEY_ID'),
|
||||
aws_secret_access_key=os.environ.get('AWS_SECRET_ACCESS_KEY'),
|
||||
region_name=os.environ.get('AWS_DEFAULT_REGION'),
|
||||
)
|
||||
|
||||
iam_client = ses.client('iam')
|
||||
@@ -98,10 +98,10 @@ def test_boto_hardcore_mode(tmpdir):
|
||||
|
||||
with vcr.use_cassette(str(tmpdir.join('boto3-hardcore.yml'))) as cass:
|
||||
ses = boto3.Session(
|
||||
aws_access_key_id=os.environ['AWS_ACCESS_KEY_ID'],
|
||||
aws_secret_access_key=os.environ['AWS_SECRET_ACCESS_KEY'],
|
||||
aws_access_key_id=os.environ.get('AWS_ACCESS_KEY_ID'),
|
||||
aws_secret_access_key=os.environ.get('AWS_SECRET_ACCESS_KEY'),
|
||||
aws_session_token=None,
|
||||
region_name=os.environ['AWS_DEFAULT_REGION'],
|
||||
region_name=os.environ.get('AWS_DEFAULT_REGION'),
|
||||
)
|
||||
|
||||
iam_client = ses.client('iam')
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
"""Stubs for boto3"""
|
||||
import six
|
||||
|
||||
try:
|
||||
# boto using awsrequest
|
||||
@@ -23,3 +24,21 @@ class VCRRequestsHTTPConnection(VCRHTTPConnection, 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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user