~ubuntu-branches/ubuntu/quantal/nova/quantal-proposed

« back to all changes in this revision

Viewing changes to nova/tests/api/openstack/compute/test_extensions.py

  • Committer: Package Import Robot
  • Author(s): Chuck Short
  • Date: 2012-08-16 14:04:11 UTC
  • mto: This revision was merged to the branch mainline in revision 84.
  • Revision ID: package-import@ubuntu.com-20120816140411-0mr4n241wmk30t9l
Tags: upstream-2012.2~f3
ImportĀ upstreamĀ versionĀ 2012.2~f3

Show diffs side-by-side

added added

removed removed

Lines of Context:
109
109
        self.action_ext = action_ext
110
110
        self.request_ext = request_ext
111
111
        self.controller_ext = controller_ext
 
112
        self.extra_resource_ext = None
112
113
 
113
114
    def get_resources(self):
114
115
        resource_exts = []
115
116
        if self.resource_ext:
116
117
            resource_exts.append(self.resource_ext)
 
118
        if self.extra_resource_ext:
 
119
            resource_exts.append(self.extra_resource_ext)
117
120
        return resource_exts
118
121
 
119
122
    def get_actions(self):
151
154
    def setUp(self):
152
155
        super(ExtensionControllerTest, self).setUp()
153
156
        self.ext_list = [
154
 
            "Accounts",
155
157
            "AdminActions",
156
158
            "Aggregates",
 
159
            "AvailabilityZone",
157
160
            "Certificates",
158
161
            "Cloudpipe",
159
162
            "Console_output",
173
176
            "Hosts",
174
177
            "Keypairs",
175
178
            "Multinic",
 
179
            "MultipleCreate",
176
180
            "Networks",
177
181
            "QuotaClasses",
178
182
            "Quotas",
182
186
            "ServerDiagnostics",
183
187
            "ServerStartStop",
184
188
            "SimpleTenantUsage",
185
 
            "Users",
 
189
            "UserData",
186
190
            "VirtualInterfaces",
187
191
            "Volumes",
188
192
            "VolumeTypes",
382
386
        app = compute.APIRouter()
383
387
        ext_mgr = compute_extensions.ExtensionManager()
384
388
        ext_mgr.register(InvalidExtension())
385
 
        self.assertTrue('FOXNSOX' in ext_mgr.extensions)
386
 
        self.assertTrue('THIRD' not in ext_mgr.extensions)
 
389
        self.assertTrue(ext_mgr.is_loaded('FOXNSOX'))
 
390
        self.assertFalse(ext_mgr.is_loaded('THIRD'))
387
391
 
388
392
 
389
393
class ActionExtensionTest(ExtensionTestCase):
513
517
        self.assertEqual(200, response.status_int)
514
518
        self.assertEqual(extension_body, response.body)
515
519
 
 
520
    def test_controller_extension_late_inherited_resource(self):
 
521
        # Need a dict for the body to convert to a ResponseObject
 
522
        controller = StubController(dict(foo=response_body))
 
523
        parent_ext = base_extensions.ResourceExtension('tweedles', controller)
 
524
 
 
525
        ext_controller = StubLateExtensionController(extension_body)
 
526
        extension = StubControllerExtension()
 
527
        cont_ext = base_extensions.ControllerExtension(extension, 'tweedles',
 
528
                                                       ext_controller)
 
529
 
 
530
        manager = StubExtensionManager(resource_ext=parent_ext,
 
531
                                       controller_ext=cont_ext)
 
532
        child_ext = base_extensions.ResourceExtension('beetles', controller,
 
533
                                                      inherits='tweedles')
 
534
        manager.extra_resource_ext = child_ext
 
535
        app = compute.APIRouter(manager)
 
536
        request = webob.Request.blank("/fake/beetles")
 
537
        response = request.get_response(app)
 
538
        self.assertEqual(200, response.status_int)
 
539
        self.assertEqual(extension_body, response.body)
 
540
 
516
541
    def test_controller_action_extension_early(self):
517
542
        controller = StubActionController(response_body)
518
543
        actions = dict(action='POST')