61
65
def test_fetch_pack_none(self):
63
"008855dcc6bf963f922e1ed5c4bbaaefcfacef57b1d7 HEAD.multi_ack thin-pack side-band side-band-64k ofs-delta shallow no-progress include-tag\n"
67
'008855dcc6bf963f922e1ed5c4bbaaefcfacef57b1d7 HEAD.multi_ack thin-pack side-band side-band-64k ofs-delta shallow no-progress include-tag\n'
66
self.client.fetch_pack("bla", lambda heads: [], None, None, None)
67
self.assertEquals(self.rout.getvalue(), "0000")
70
self.client.fetch_pack('bla', lambda heads: [], None, None, None)
71
self.assertEquals(self.rout.getvalue(), '0000')
73
def test_get_transport_and_path_tcp(self):
74
client, path = get_transport_and_path('git://foo.com/bar/baz')
75
self.assertTrue(isinstance(client, TCPGitClient))
76
self.assertEquals('foo.com', client._host)
77
self.assertEquals(TCP_GIT_PORT, client._port)
78
self.assertEqual('/bar/baz', path)
80
client, path = get_transport_and_path('git://foo.com:1234/bar/baz')
81
self.assertTrue(isinstance(client, TCPGitClient))
82
self.assertEquals('foo.com', client._host)
83
self.assertEquals(1234, client._port)
84
self.assertEqual('/bar/baz', path)
86
def test_get_transport_and_path_ssh_explicit(self):
87
client, path = get_transport_and_path('git+ssh://foo.com/bar/baz')
88
self.assertTrue(isinstance(client, SSHGitClient))
89
self.assertEquals('foo.com', client.host)
90
self.assertEquals(None, client.port)
91
self.assertEquals(None, client.username)
92
self.assertEqual('/bar/baz', path)
94
client, path = get_transport_and_path('git+ssh://foo.com:1234/bar/baz')
95
self.assertTrue(isinstance(client, SSHGitClient))
96
self.assertEquals('foo.com', client.host)
97
self.assertEquals(1234, client.port)
98
self.assertEqual('/bar/baz', path)
100
def test_get_transport_and_path_ssh_implicit(self):
101
client, path = get_transport_and_path('foo:/bar/baz')
102
self.assertTrue(isinstance(client, SSHGitClient))
103
self.assertEquals('foo', client.host)
104
self.assertEquals(None, client.port)
105
self.assertEquals(None, client.username)
106
self.assertEqual('/bar/baz', path)
108
client, path = get_transport_and_path('foo.com:/bar/baz')
109
self.assertTrue(isinstance(client, SSHGitClient))
110
self.assertEquals('foo.com', client.host)
111
self.assertEquals(None, client.port)
112
self.assertEquals(None, client.username)
113
self.assertEqual('/bar/baz', path)
115
client, path = get_transport_and_path('user@foo.com:/bar/baz')
116
self.assertTrue(isinstance(client, SSHGitClient))
117
self.assertEquals('foo.com', client.host)
118
self.assertEquals(None, client.port)
119
self.assertEquals('user', client.username)
120
self.assertEqual('/bar/baz', path)
122
def test_get_transport_and_path_subprocess(self):
123
client, path = get_transport_and_path('foo.bar/baz')
124
self.assertTrue(isinstance(client, SubprocessGitClient))
125
self.assertEquals('foo.bar/baz', path)
127
def test_get_transport_and_path_error(self):
128
self.assertRaises(ValueError, get_transport_and_path, 'foo://bar/baz')
70
131
class SSHGitClientTests(TestCase):
73
134
super(SSHGitClientTests, self).setUp()
74
self.client = SSHGitClient("git.samba.org")
135
self.client = SSHGitClient('git.samba.org')
76
137
def test_default_command(self):
77
self.assertEquals("git-upload-pack", self.client._get_cmd_path("upload-pack"))
138
self.assertEquals('git-upload-pack', self.client._get_cmd_path('upload-pack'))
79
140
def test_alternative_command_path(self):
80
self.client.alternative_paths["upload-pack"] = "/usr/lib/git/git-upload-pack"
81
self.assertEquals("/usr/lib/git/git-upload-pack", self.client._get_cmd_path("upload-pack"))
141
self.client.alternative_paths['upload-pack'] = '/usr/lib/git/git-upload-pack'
142
self.assertEquals('/usr/lib/git/git-upload-pack', self.client._get_cmd_path('upload-pack'))