/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar
2052.3.2 by John Arbash Meinel
Change Copyright .. by Canonical to Copyright ... Canonical
1
# Copyright (C) 2005, 2006 Canonical Ltd
1887.1.1 by Adeodato Simó
Do not separate paragraphs in the copyright statement with blank lines,
2
#
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
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.
1887.1.1 by Adeodato Simó
Do not separate paragraphs in the copyright statement with blank lines,
7
#
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
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.
1887.1.1 by Adeodato Simó
Do not separate paragraphs in the copyright statement with blank lines,
12
#
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
16
17
18
"""Black-box tests for bzr help.
19
"""
20
21
2485.1.2 by James Westby
Update with comments from review, thanks to John and Aaron.
22
import bzrlib
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
23
from bzrlib.tests.blackbox import ExternalBase
24
25
26
class TestHelp(ExternalBase):
27
28
    def test_help_basic(self):
1616.1.15 by Martin Pool
Handle 'bzr ?', etc.
29
        for cmd in ['--help', 'help', '-h', '-?']:
30
            output = self.runbzr(cmd)[0]
31
            line1 = output.split('\n')[0]
1861.2.6 by Alexander Belchenko
branding: change Bazaar-NG to Bazaar
32
            if not line1.startswith('Bazaar'):
1616.1.15 by Martin Pool
Handle 'bzr ?', etc.
33
                self.fail("bad output from bzr %s:\n%r" % (cmd, output))
1616.1.13 by Martin Pool
Fix 'bzr -h' to show help (#35940)
34
        # see https://launchpad.net/products/bzr/+bug/35940, -h doesn't work
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
35
2023.1.1 by ghigo
add topics help
36
    def test_help_topics(self):
37
        """Smoketest for 'bzr help topics'"""
38
        out, err = self.run_bzr('help', 'topics')
39
        self.assertContainsRe(out, 'basic')
40
        self.assertContainsRe(out, 'topics')
2070.4.7 by ghigo
Updates on the basis of the Richard Wilbur suggestions
41
        self.assertContainsRe(out, 'commands')
42
        self.assertContainsRe(out, 'revisionspec')
2023.1.1 by ghigo
add topics help
43
44
    def test_help_revisionspec(self):
45
        """Smoke test for 'bzr help revisionspec'"""
46
        out, err = self.run_bzr('help', 'revisionspec')
47
        self.assertContainsRe(out, 'revno:')
48
        self.assertContainsRe(out, 'date:')
2070.4.7 by ghigo
Updates on the basis of the Richard Wilbur suggestions
49
        self.assertContainsRe(out, 'revid:')
50
        self.assertContainsRe(out, 'last:')
51
        self.assertContainsRe(out, 'before:')
52
        self.assertContainsRe(out, 'ancestor:')
53
        self.assertContainsRe(out, 'branch:')
2023.1.1 by ghigo
add topics help
54
2245.7.1 by James Westby
Add a help topic describing checkouts and how they work.
55
    def test_help_checkouts(self):
56
        """Smoke test for 'bzr help checkouts'"""
57
        out, err = self.runbzr('help checkouts')
58
        self.assertContainsRe(out, 'checkout')
59
        self.assertContainsRe(out, 'lightweight')
2241.2.12 by ghigo
update to the latest bzr.dev
60
        
2241.2.11 by ghigo
On the basis of Robert Collins and John Arbash Meinel
61
    def test_help_urlspec(self):
62
        """Smoke test for 'bzr help urlspec'"""
63
        out, err = self.run_bzr('help', 'urlspec')
64
        self.assertContainsRe(out, 'aftp://')
65
        self.assertContainsRe(out, 'bzr://')
66
        self.assertContainsRe(out, 'bzr\+ssh://')
67
        self.assertContainsRe(out, 'file://')
68
        self.assertContainsRe(out, 'ftp://')
69
        self.assertContainsRe(out, 'http://')
70
        self.assertContainsRe(out, 'https://')
71
        self.assertContainsRe(out, 'sftp://')
72
2401.2.1 by James Westby
Add a help topic for repositories.
73
    def test_help_repositories(self):
74
        """Smoke test for 'bzr help repositories'"""
75
        out, err = self.runbzr('help repositories')
2485.1.2 by James Westby
Update with comments from review, thanks to John and Aaron.
76
        self.assertEqual(bzrlib.help_topics._repositories, out)
2401.2.1 by James Westby
Add a help topic for repositories.
77
2401.2.2 by James Westby
Add a working-trees help topic.
78
    def test_help_working_trees(self):
79
        """Smoke test for 'bzr help working-trees'"""
80
        out, err = self.runbzr('help working-trees')
2485.1.2 by James Westby
Update with comments from review, thanks to John and Aaron.
81
        self.assertEqual(bzrlib.help_topics._working_trees, out)
2401.2.2 by James Westby
Add a working-trees help topic.
82
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
83
    def test_help_commands(self):
84
        dash_help  = self.runbzr('--help commands')[0]
85
        commands   = self.runbzr('help commands')[0]
1551.9.14 by Aaron Bentley
Change topic to hidden-commands
86
        hidden = self.runbzr('help hidden-commands')[0]
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
87
        long_help  = self.runbzr('help --long')[0]
88
        qmark_long = self.runbzr('? --long')[0]
89
        qmark_cmds = self.runbzr('? commands')[0]
90
        self.assertEquals(dash_help, commands)
91
        self.assertEquals(dash_help, long_help)
92
        self.assertEquals(dash_help, qmark_long)
93
        self.assertEquals(dash_help, qmark_cmds)
94
1551.9.13 by Aaron Bentley
add "hidden" topic
95
    def test_hidden(self):
1551.9.14 by Aaron Bentley
Change topic to hidden-commands
96
        commands = self.runbzr('help commands')[0]
97
        hidden = self.runbzr('help hidden-commands')[0]
1551.9.13 by Aaron Bentley
add "hidden" topic
98
        self.assertTrue('commit' in commands)
99
        self.assertTrue('commit' not in hidden)
100
        self.assertTrue('rocks' in hidden)
101
        self.assertTrue('rocks' not in commands)
102
1553.4.3 by Michael Ellerman
Add custom description for help's --long option, this fixes bug #31217.
103
    def test_help_detail(self):
104
        dash_h  = self.runbzr('commit -h')[0]
105
        help_x  = self.runbzr('help commit')[0]
106
        qmark_x = self.runbzr('help commit')[0]
107
        self.assertEquals(dash_h, help_x)
108
        self.assertEquals(dash_h, qmark_x)
109
110
    def test_help_help(self):
111
        help = self.runbzr('help help')[0]
112
        qmark = self.runbzr('? ?')[0]
113
        self.assertEquals(help, qmark)
114
        for line in help.split('\n'):
115
            if '--long' in line:
116
                self.assertTrue('show help on all commands' in line)