basic ec2 and s3 working

This commit is contained in:
Steve Pulec 2013-02-18 16:09:40 -05:00
commit 77d6df6531
33 changed files with 561 additions and 1 deletions

40
moto/core/models.py Normal file
View file

@ -0,0 +1,40 @@
import functools
import re
from httpretty import HTTPretty
class BaseBackend(object):
base_url = None
def reset(self):
self = self.__class__()
@property
def urls(self):
backend_module = self.__class__.__module__
backend_urls_module_name = backend_module.replace("models", "urls")
backend_urls_module = __import__(backend_urls_module_name, fromlist=['urls'])
urls = backend_urls_module.urls
return urls
def decorator(self, func):
@functools.wraps(func)
def wrapper(*args, **kw):
self.reset()
HTTPretty.reset()
HTTPretty.enable()
for method in HTTPretty.METHODS:
for key, value in self.urls.iteritems():
HTTPretty.register_uri(
method=method,
uri=re.compile(self.base_url + key),
body=value,
)
try:
return func(*args, **kw)
finally:
HTTPretty.disable()
return wrapper