1
# Copyright (C) 2007-2010 Canonical Ltd
1
# Copyright (C) 2007 Canonical Ltd
3
3
# This program is free software; you can redistribute it and/or modify
4
4
# it under the terms of the GNU General Public License as published by
13
13
# You should have received a copy of the GNU General Public License
14
14
# along with this program; if not, write to the Free Software
15
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
from bzrlib import tests
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19
18
from bzrlib.builtins import cmd_push
20
from bzrlib.tests.transport_util import TestCaseWithConnectionHookedTransport
19
from bzrlib.tests.TransportUtil import TestCaseWithConnectionHookedTransport
23
21
class TestPush(TestCaseWithConnectionHookedTransport):
25
23
def test_push(self):
26
24
self.make_branch_and_tree('branch')
28
self.start_logging_connections()
25
# make_branch_and_tree create one connection
26
self.reset_connections()
31
# We don't care about the ouput but 'outf' should be defined
32
cmd.outf = tests.StringIOWrapper()
33
cmd.run(self.get_url('remote'), directory='branch')
28
cmd.run(self.get_url() + '/remote', directory='branch')
34
29
self.assertEquals(1, len(self.connections))
36
def test_push_onto_stacked(self):
37
self.make_branch_and_tree('base', format='1.9')
38
self.make_branch_and_tree('source', format='1.9')
40
self.start_logging_connections()
43
cmd.outf = tests.StringIOWrapper()
44
cmd.run(self.get_url('remote'), directory='source',
45
stacked_on=self.get_url('base'))
46
self.assertEqual(1, len(self.connections))