diff options
| author | termie <github@anarkystic.com> | 2011-10-11 15:11:27 -0700 |
|---|---|---|
| committer | termie <github@anarkystic.com> | 2011-10-11 15:11:27 -0700 |
| commit | a200e5007e0b0ba5b88a3555dea5600a1915701c (patch) | |
| tree | 250847ce2af1192b42b64b4ead80500feede3cb5 | |
| parent | 03b75a5e696c1d7423b498f0dbc4752d29aa4dd0 (diff) | |
add a test client
| -rw-r--r-- | keystonelight/test.py | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/keystonelight/test.py b/keystonelight/test.py index 801bae1c..5b5e89d1 100644 --- a/keystonelight/test.py +++ b/keystonelight/test.py @@ -1,10 +1,37 @@ import os import unittest +from keystonelight import wsgi + ROOTDIR = os.path.dirname(os.path.dirname(__file__)) VENDOR = os.path.join(ROOTDIR, 'vendor') +class TestClient(object): + def __init__(self, endpoint=None, token=None): + self.endpoint = None + self.token = token + + def request(self, method, path, headers=None, body=None): + if headers is None: + headers = {} + req = wsgi.Request.blank(path) + req.method = method + for k, v in headers.iteritems(): + req.headers[k] = v + if req.body: + req.body = body + return req.get_response(self.endpoint) + + def get(self, path, headers=None): + return self.request('GET', path=path, headers=headers) + + def post(self, path, headers=None, body=None): + return self.request('POST', path=path, headers=headers, body=body) + + def put(self, path, headers=None, body=None): + return self.request('PUT', path=path, headers=headers, body=body) + class TestCase(unittest.TestCase): def assertDictEquals(self, expected, actual): |
