Example #1
0
    def _base_test(self, expect, key):
        class FakeAPI(object):
            """Fake API and ensure request url is correct."""
            def get(self, *args, **kwargs):
                assert ('GET', args[0]) == expect

            def json_request(self, *args, **kwargs):
                assert args == expect
                ret = key and {key: []} or {}
                return {}, {key: ret}

        manager = ResourceManager(FakeAPI())
        self.m.StubOutWithMock(manager, '_resolve_stack_id')
        manager._resolve_stack_id('teststack').AndReturn('teststack/abcd1234')
        self.m.ReplayAll()

        return manager
    def _base_test(self, expect, key):

        class FakeAPI(object):
            """Fake API and ensure request url is correct."""

            def get(self, *args, **kwargs):
                assert ('GET', args[0]) == expect

            def json_request(self, *args, **kwargs):
                assert args == expect
                ret = key and {key: []} or {}
                return {}, {key: ret}

        manager = ResourceManager(FakeAPI())
        self.m.StubOutWithMock(manager, '_resolve_stack_id')
        manager._resolve_stack_id('teststack').AndReturn('teststack/abcd1234')
        self.m.ReplayAll()

        return manager
    def test_get_event_with_unicode_resource_name(self):
        fields = {'stack_id': 'teststack',
                  'resource_name': u'\u5de5\u4f5c'}

        class FakeAPI(object):
            """Fake API and ensure request url is correct."""

            def json_request(self, *args, **kwargs):
                expect = ('GET',
                          '/stacks/teststack%2Fabcd1234/resources'
                          '/%E5%B7%A5%E4%BD%9C')
                assert args == expect
                return {}, {'resource': []}

        manager = ResourceManager(FakeAPI())
        Resource.__init__ = MagicMock()
        Resource.__init__.return_value = None
        self.m.StubOutWithMock(manager, '_resolve_stack_id')
        manager._resolve_stack_id('teststack').AndReturn('teststack/abcd1234')
        self.m.ReplayAll()
        manager.get(**fields)
    def test_list_nested(self):
        fields = {'stack_id': 'teststack', 'nested_depth': '99'}
        expect = ('/stacks/teststack/resources?nested_depth=99')
        key = 'resources'

        class FakeResponse(object):
            def json(self):
                return {key: {}}

        class FakeClient(object):
            def get(self, *args, **kwargs):
                assert args[0] == expect
                return FakeResponse()

        manager = ResourceManager(FakeClient())
        self.m.StubOutWithMock(manager, '_resolve_stack_id')
        manager._resolve_stack_id('teststack').AndReturn('teststack/abcd1234')
        self.m.ReplayAll()

        manager.list(**fields)