def test_get_url(self): host = 'github.com' path = '/jelmer/dulwich' c = TCPGitClient(host) url = c.get_url(path) self.assertEqual('git://github.com/jelmer/dulwich', url)
def test_get_url_with_port(self): host = 'github.com' path = '/jelmer/dulwich' port = 9090 c = TCPGitClient(host, port=port) url = c.get_url(path) self.assertEqual('git://github.com:9090/jelmer/dulwich', url)
def test_fetch_from_non_git(self): wt = self.make_branch_and_tree('t', format='bzr') self.build_tree(['t/foo']) wt.add('foo') revid = wt.commit(message="some data") wt.branch.tags.set_tag("atag", revid) t = self.get_transport('t') port = self.start_server(t) c = TCPGitClient('localhost', port=port) gitrepo = Repo.init('gitrepo', mkdir=True) result = c.fetch('/', gitrepo) self.assertEqual(set(result.refs.keys()), set([b"refs/tags/atag", b"HEAD"]))
class Client: remote_url = None client = None def __init__(self, remote_address, remote_port): self.remote_url = remote_address path = dirname(remote_address) self.client = TCPGitClient(path.encode('ascii'), remote_port) def fetch(self, repo): repo_name = basename(self.remote_url) self.client.fetch(repo_name.encode(), repo)
def __init__(self, remote_address, remote_port): self.remote_url = remote_address path = dirname(remote_address) self.client = TCPGitClient(path.encode('ascii'), remote_port)