def test_list_types(self):
        key = 'resource_types'
        expect = ('GET', '/resource_types')

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

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

        manager = ResourceTypeManager(FakeClient())
        manager.list()
    def test_list_types(self):
        key = "resource_types"
        expect = ("GET", "/resource_types")

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

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

        manager = ResourceTypeManager(FakeClient())
        manager.list()
    def test_get(self):
        resource_type = u'OS::Nova::KeyPair'

        class FakeAPI(object):
            """Fake API and ensure request url is correct."""
            def __init__(self, *args, **kwargs):
                self.requests = []

            def json_request(self, *args, **kwargs):
                self.requests.append(args)
                return {}, {'attributes': [], 'properties': []}

        test_api = FakeAPI()
        manager = ResourceTypeManager(test_api)
        manager.get(resource_type)
        expect = ('GET', '/resource_types/OS%3A%3ANova%3A%3AKeyPair')
        self.assertIn(expect, test_api.requests)
    def test_get(self):
        resource_type = u'OS::Nova::KeyPair'

        class FakeAPI(object):
            """Fake API and ensure request url is correct."""
            def __init__(self, *args, **kwargs):
                self.requests = []

            def json_request(self, *args, **kwargs):
                self.requests.append(args)
                return {}, {'attributes': [], 'properties': []}

        test_api = FakeAPI()
        manager = ResourceTypeManager(test_api)
        manager.get(resource_type)
        expect = ('GET', '/resource_types/OS%3A%3ANova%3A%3AKeyPair')
        self.assertIn(expect, test_api.requests)
    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 = ResourceTypeManager(FakeAPI())
        return manager
 def test_list_types(self):
     manager = ResourceTypeManager(None)
     manager._list = mock.MagicMock()
     manager.list()
     manager._list.assert_called_once_with('/resource_types',
                                           'resource_types')
 def test_list_types(self):
     manager = ResourceTypeManager(None)
     manager._list = mock.MagicMock()
     manager.list()
     manager._list.assert_called_once_with('/resource_types',
                                           'resource_types')