/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
1
# Copyright (C) 2011, 2012, 2016 Canonical Ltd
6060.6.1 by Jelmer Vernooij
Add 'bzr branches' command.
2
#
3
# This program is free software; you can redistribute it and/or modify
4
# it under the terms of the GNU General Public License as published by
5
# the Free Software Foundation; either version 2 of the License, or
6
# (at your option) any later version.
7
#
8
# This program is distributed in the hope that it will be useful,
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11
# GNU General Public License for more details.
12
#
13
# You should have received a copy of the GNU General Public License
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
16
17
6622.1.29 by Jelmer Vernooij
Fix some more tests.
18
"""Black-box tests for brz branches."""
6060.6.1 by Jelmer Vernooij
Add 'bzr branches' command.
19
6670.4.3 by Jelmer Vernooij
Fix more imports.
20
from breezy.bzr.bzrdir import BzrDir
6622.1.34 by Jelmer Vernooij
Rename brzlib => breezy.
21
from breezy.tests import TestCaseWithTransport
6060.6.1 by Jelmer Vernooij
Add 'bzr branches' command.
22
23
24
class TestBranches(TestCaseWithTransport):
25
26
    def test_no_colocated_support(self):
27
        # Listing the branches in a control directory without colocated branch
28
        # support.
29
        self.run_bzr('init a')
30
        out, err = self.run_bzr('branches a')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
31
        self.assertEqual(out, "* (default)\n")
6060.6.1 by Jelmer Vernooij
Add 'bzr branches' command.
32
33
    def test_no_branch(self):
34
        # Listing the branches in a control directory without branches.
35
        self.run_bzr('init-repo a')
36
        out, err = self.run_bzr('branches a')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
37
        self.assertEqual(out, "")
6060.6.1 by Jelmer Vernooij
Add 'bzr branches' command.
38
39
    def test_default_current_dir(self):
6622.1.29 by Jelmer Vernooij
Fix some more tests.
40
        # "brz branches" list the branches in the current directory
6060.6.1 by Jelmer Vernooij
Add 'bzr branches' command.
41
        # if no location was specified.
42
        self.run_bzr('init-repo a')
43
        out, err = self.run_bzr('branches', working_dir='a')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
44
        self.assertEqual(out, "")
6110.8.1 by Jelmer Vernooij
Add --scan option to 'bzr branches'.
45
6110.8.3 by Jelmer Vernooij
Rename --scan to --recursive.
46
    def test_recursive_current(self):
6110.8.2 by Jelmer Vernooij
Cope with branch in current directory in 'bzr branches --scan'.
47
        self.run_bzr('init .')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
48
        self.assertEqual(".\n", self.run_bzr('branches --recursive')[0])
6110.8.2 by Jelmer Vernooij
Cope with branch in current directory in 'bzr branches --scan'.
49
6110.8.3 by Jelmer Vernooij
Rename --scan to --recursive.
50
    def test_recursive(self):
6110.8.1 by Jelmer Vernooij
Add --scan option to 'bzr branches'.
51
        self.run_bzr('init source')
52
        self.run_bzr('init source/subsource')
53
        self.run_bzr('checkout --lightweight source checkout')
54
        self.run_bzr('init checkout/subcheckout')
55
        self.run_bzr('init checkout/.bzr/subcheckout')
6110.8.3 by Jelmer Vernooij
Rename --scan to --recursive.
56
        out = self.run_bzr('branches --recursive')[0]
6110.8.1 by Jelmer Vernooij
Add --scan option to 'bzr branches'.
57
        lines = out.split('\n')
58
        self.assertIs(True, 'source' in lines, lines)
59
        self.assertIs(True, 'source/subsource' in lines, lines)
60
        self.assertIs(True, 'checkout/subcheckout' in lines, lines)
61
        self.assertIs(True, 'checkout' not in lines, lines)
6379.10.1 by Jelmer Vernooij
Make 'bzr branches' indicate the current branch.
62
63
    def test_indicates_non_branch(self):
64
        t = self.make_branch_and_tree('a', format='development-colo')
6653.6.1 by Jelmer Vernooij
Rename a number of attributes from bzrdir to controldir.
65
        t.controldir.create_branch(name='another')
66
        t.controldir.create_branch(name='colocated')
6379.10.1 by Jelmer Vernooij
Make 'bzr branches' indicate the current branch.
67
        out, err = self.run_bzr('branches a')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
68
        self.assertEqual(out, "* (default)\n"
6379.10.3 by Jelmer Vernooij
Only display active branch if it's not one of the existing colocated branches.
69
                               "  another\n"
70
                               "  colocated\n")
6379.10.1 by Jelmer Vernooij
Make 'bzr branches' indicate the current branch.
71
72
    def test_indicates_branch(self):
73
        t = self.make_repository('a', format='development-colo')
6653.6.1 by Jelmer Vernooij
Rename a number of attributes from bzrdir to controldir.
74
        t.controldir.create_branch(name='another')
75
        branch = t.controldir.create_branch(name='colocated')
76
        t.controldir.set_branch_reference(target_branch=branch)
6379.10.1 by Jelmer Vernooij
Make 'bzr branches' indicate the current branch.
77
        out, err = self.run_bzr('branches a')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
78
        self.assertEqual(out, "  another\n"
6379.10.3 by Jelmer Vernooij
Only display active branch if it's not one of the existing colocated branches.
79
                               "* colocated\n")
6466.2.1 by Jelmer Vernooij
List sibling branches in ``bzr branches``.
80
81
    def test_shared_repos(self):
82
        self.make_repository('a', shared=True)
83
        BzrDir.create_branch_convenience('a/branch1')
84
        b = BzrDir.create_branch_convenience('a/branch2')
85
        b.create_checkout(lightweight=True, to_location='b')
86
        out, err = self.run_bzr('branches b')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
87
        self.assertEqual(out, "  branch1\n"
6466.2.1 by Jelmer Vernooij
List sibling branches in ``bzr branches``.
88
                               "* branch2\n")
89
90
    def test_standalone_branch(self):
91
        self.make_branch('a')
92
        out, err = self.run_bzr('branches a')
6614.1.3 by Vincent Ladeuil
Fix assertEquals being deprecated by using assertEqual.
93
        self.assertEqual(out, "* (default)\n")