class TestMetaserv(unittest.TestCase):

    def __init__(self, *args, **kwargs):
        super(TestMetaserv, self).__init__(*args, **kwargs)
        self.httpClient = MetaHttpClient("http://example.com")
        self.httpClient.doRequest = wrappedMockDoRequest(self.httpClient)

    def testNewClient(self):
        expected = 'get http://example.com/meta'
        self.assertEqual(expected, self.httpClient.getRoot().json())
        expected = "/".join((expected, "db"))
        self.assertEqual(expected, self.httpClient.getTypes().json())
        expected = "/".join((expected, "DC"))
        self.assertEqual(expected, self.httpClient.getDbNames("DC").json())
        expected = "/".join((expected, "sources"))
        self.assertEqual(expected, self.httpClient.getDbInfo("DC", "sources").json())
        expected = "/".join((expected, "tables"))
        self.assertEqual(expected, self.httpClient.getTableNames("DC", "sources").json())
        expected = "/".join((expected, "galaxies"))
        self.assertEqual(expected, self.httpClient.getTableInfo("DC", "sources", "galaxies").json())
        expected = "/".join((expected, "schema"))
        self.assertEqual(expected, self.httpClient.getTableSchema("DC", "sources", "galaxies").json())


    def testQuoteRequest(self):
        expected = "get http://example.com/meta/db/DC/source%20catalog"
        self.assertEqual(expected, self.httpClient.getDbInfo("DC", "source catalog").json())
class TestMetaserv(unittest.TestCase):
    def __init__(self, *args, **kwargs):
        super(TestMetaserv, self).__init__(*args, **kwargs)
        self.httpClient = MetaHttpClient("http://example.com")
        self.httpClient.doRequest = wrappedMockDoRequest(self.httpClient)

    def testNewClient(self):
        expected = 'get http://example.com/meta'
        self.assertEqual(expected, self.httpClient.getRoot().json())
        expected = "/".join((expected, "db"))
        self.assertEqual(expected, self.httpClient.getTypes().json())
        expected = "/".join((expected, "DC"))
        self.assertEqual(expected, self.httpClient.getDbNames("DC").json())
        expected = "/".join((expected, "sources"))
        self.assertEqual(expected,
                         self.httpClient.getDbInfo("DC", "sources").json())
        expected = "/".join((expected, "tables"))
        self.assertEqual(expected,
                         self.httpClient.getTableNames("DC", "sources").json())
        expected = "/".join((expected, "galaxies"))
        self.assertEqual(
            expected,
            self.httpClient.getTableInfo("DC", "sources", "galaxies").json())
        expected = "/".join((expected, "schema"))
        self.assertEqual(
            expected,
            self.httpClient.getTableSchema("DC", "sources", "galaxies").json())

    def testQuoteRequest(self):
        expected = "get http://example.com/meta/db/DC/source%20catalog"
        self.assertEqual(
            expected,
            self.httpClient.getDbInfo("DC", "source catalog").json())
 def __init__(self, *args, **kwargs):
     super(TestMetaserv, self).__init__(*args, **kwargs)
     self.httpClient = MetaHttpClient("http://example.com")
     self.httpClient.doRequest = wrappedMockDoRequest(self.httpClient)
 def __init__(self, *args, **kwargs):
     super(TestMetaserv, self).__init__(*args, **kwargs)
     self.httpClient = MetaHttpClient("http://example.com")
     self.httpClient.doRequest = wrappedMockDoRequest(self.httpClient)