Beispiel #1
0
def get_provider(url):
    protocol, path, params = m.parse_provider_url(url)
    dirname = os.path.dirname(__file__)
    provider_name = (protocol + "provider").lower()

    for filename in os.listdir(dirname):
        name, ext = os.path.splitext(os.path.basename(filename))
        if name == "__init__" or name == "__main__" or ext != ".py":
            continue

        temp = SourceFileLoader(name, os.path.join(dirname, filename)).load_module()
        for entryname in dir(temp):
            if entryname.lower() != provider_name:
                continue

            return getattr(temp, entryname)(path, params)

    raise Exception("Provider does not found")
Beispiel #2
0
def get_provider(url):
    protocol, path, params = m.parse_provider_url(url)
    dirname = os.path.dirname(__file__)
    provider_name = (protocol + "provider").lower()

    for filename in os.listdir(dirname):
        name, ext = os.path.splitext(os.path.basename(filename))
        if name == "__init__" or name == "__main__" or ext != ".py":
            continue

        temp = SourceFileLoader(name, os.path.join(dirname, filename)).load_module()
        for entryname in dir(temp):
            if entryname.lower() != provider_name:
                continue

            return getattr(temp, entryname)(path, params)

    raise Exception("Provider does not found")
Beispiel #3
0
 def test_parse_provider_url_wo_params(self):
     protocol, path, params = m.parse_provider_url("test://node1/à faire")
     self.assertEqual(protocol, "test")
     self.assertEqual(path, ["node1", "à faire"])
     self.assertEqual(params, {})
Beispiel #4
0
 def test_parse_provider_url(self):
     protocol, path, params = m.parse_provider_url(
         "test://node1/node2?param1=2&param2=1")
     self.assertEqual(protocol, "test")
     self.assertEqual(path, ["node1", "node2"])
     self.assertEqual(params, {"param1": "2", "param2": "1"})
Beispiel #5
0
 def test_parse_provider_url(self):
     protocol, path, params = m.parse_provider_url("test://node1/node2?param1=2&param2=1")
     self.assertEqual(protocol, "test")
     self.assertEqual(path, ["node1", "node2"])
     self.assertEqual(params, {"param1": "2", "param2": "1"})