34 lines
859 B
Python
34 lines
859 B
Python
import os
|
|
from functools import wraps
|
|
from moto import mock_ec2, mock_ssm
|
|
|
|
|
|
def ec2_aws_verified(func):
|
|
"""
|
|
Function that is verified to work against AWS.
|
|
Can be run against AWS at any time by setting:
|
|
MOTO_TEST_ALLOW_AWS_REQUEST=true
|
|
|
|
If this environment variable is not set, the function runs in a `mock_s3` context.
|
|
|
|
This decorator will:
|
|
- Create a bucket
|
|
- Run the test and pass the bucket_name as an argument
|
|
- Delete the objects and the bucket itself
|
|
"""
|
|
|
|
@wraps(func)
|
|
def pagination_wrapper():
|
|
allow_aws = (
|
|
os.environ.get("MOTO_TEST_ALLOW_AWS_REQUEST", "false").lower() == "true"
|
|
)
|
|
|
|
if allow_aws:
|
|
resp = func()
|
|
else:
|
|
with mock_ec2(), mock_ssm():
|
|
resp = func()
|
|
return resp
|
|
|
|
return pagination_wrapper
|