summaryrefslogtreecommitdiffstats
path: root/nova
diff options
context:
space:
mode:
authorCerberus <matt.dietz@rackspace.com>2010-09-23 16:55:51 -0500
committerCerberus <matt.dietz@rackspace.com>2010-09-23 16:55:51 -0500
commitd4edbd26b27de3df6bf8af98486714d1cee5b594 (patch)
tree9069462d1cbf2c0a2135a574557c2789211fb69b /nova
parentc14fef2fbb28bffc9a5507f2a23e0c7c0ecb6c2c (diff)
parentbe214c0ecece6d9cffced02f397ba9ce42be6d9f (diff)
Merging in changes from rs_auth, since I needed something modern to develop on while waiting for Hudson to right itself
Diffstat (limited to 'nova')
-rw-r--r--nova/api/rackspace/__init__.py2
-rw-r--r--nova/api/rackspace/servers.py3
-rw-r--r--nova/tests/api/rackspace/servers.py13
-rw-r--r--nova/tests/api/rackspace/test_helper.py22
4 files changed, 36 insertions, 4 deletions
diff --git a/nova/api/rackspace/__init__.py b/nova/api/rackspace/__init__.py
index bd31bbc2f..63b0edc6a 100644
--- a/nova/api/rackspace/__init__.py
+++ b/nova/api/rackspace/__init__.py
@@ -145,7 +145,7 @@ class APIRouter(wsgi.Router):
def __init__(self):
mapper = routes.Mapper()
- mapper.resource("server", "servers", controller=servers.Controller()
+ mapper.resource("server", "servers", controller=servers.Controller(),
collection={'detail': 'GET'})
mapper.resource("image", "images", controller=images.Controller(),
collection={'detail': 'GET'})
diff --git a/nova/api/rackspace/servers.py b/nova/api/rackspace/servers.py
index 3ba5af8cf..08b6768f9 100644
--- a/nova/api/rackspace/servers.py
+++ b/nova/api/rackspace/servers.py
@@ -20,6 +20,7 @@ from nova import db
from nova import flags
from nova import rpc
from nova import utils
+from nova import compute
from nova.api.rackspace import base
from webob import exc
from nova import flags
@@ -121,7 +122,7 @@ class Controller(base.Controller):
'reservation_id', 'project_id', 'launch_time',
'bridge_name', 'mac_address', 'user_id']
- for key in filtered_keys::
+ for key in filtered_keys:
del inst[key]
if allowed_keys:
diff --git a/nova/tests/api/rackspace/servers.py b/nova/tests/api/rackspace/servers.py
index 6d628e78a..2cfb8d45f 100644
--- a/nova/tests/api/rackspace/servers.py
+++ b/nova/tests/api/rackspace/servers.py
@@ -16,19 +16,25 @@
# under the License.
import unittest
-
+import stubout
from nova.api.rackspace import servers
+import nova.api.rackspace
from nova.tests.api.test_helper import *
+from nova.tests.api.rackspace import test_helper
class ServersTest(unittest.TestCase):
def setUp(self):
self.stubs = stubout.StubOutForTesting()
+ test_helper.FakeAuthManager.auth_data = {}
+ test_helper.FakeAuthDatabase.data = {}
+ test_helper.stub_out_auth(self.stubs)
def tearDown(self):
self.stubs.UnsetAll()
def test_get_server_list(self):
- pass
+ req = webob.Request.blank('/v1.0/servers')
+ req.get_response(nova.api.API())
def test_create_instance(self):
pass
@@ -56,3 +62,6 @@ class ServersTest(unittest.TestCase):
def test_delete_server_instance(self):
pass
+
+if __name__ == "__main__":
+ unittest.main()
diff --git a/nova/tests/api/rackspace/test_helper.py b/nova/tests/api/rackspace/test_helper.py
index be14e2de8..1fb2a19cc 100644
--- a/nova/tests/api/rackspace/test_helper.py
+++ b/nova/tests/api/rackspace/test_helper.py
@@ -3,6 +3,7 @@ import webob.dec
import datetime
from nova.wsgi import Router
from nova import auth
+import nova.api.rackspace.auth
class Context(object):
pass
@@ -24,6 +25,27 @@ def fake_auth_init(self):
self.auth = FakeAuthManager()
self.host = 'foo'
+def stub_out_auth(stubs):
+ def fake_auth_init(self, app):
+ self.application = app
+
+ def fake_rate_init(self, app):
+ super(nova.api.rackspace.RateLimitingMiddleware, self).__init__(app)
+ self.application = app
+
+ @webob.dec.wsgify
+ def fake_wsgi(self, req):
+ return self.application
+
+ stubs.Set(nova.api.rackspace.AuthMiddleware,
+ '__init__', fake_auth_init)
+ stubs.Set(nova.api.rackspace.RateLimitingMiddleware,
+ '__init__', fake_rate_init)
+ stubs.Set(nova.api.rackspace.AuthMiddleware,
+ '__call__', fake_wsgi)
+ stubs.Set(nova.api.rackspace.RateLimitingMiddleware,
+ '__call__', fake_wsgi)
+
class FakeAuthDatabase(object):
data = {}