1
# Copyright (C) 2005, 2006, 2007 Canonical Ltd
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.
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.
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
18
"""Black-box tests for bzr.
20
These check that it behaves properly when it's invoked through the regular
21
command-line interface. This doesn't actually run a new interpreter but
22
rather starts again from the run_bzr function.
26
from bzrlib.tests import TestCaseWithTransport
29
def load_tests(basic_tests, module, loader):
30
suite = loader.suiteClass()
31
# add the tests for this module
32
suite.addTests(basic_tests)
35
'bzrlib.tests.blackbox.test_add',
36
'bzrlib.tests.blackbox.test_added',
37
'bzrlib.tests.blackbox.test_alias',
38
'bzrlib.tests.blackbox.test_aliases',
39
'bzrlib.tests.blackbox.test_ancestry',
40
'bzrlib.tests.blackbox.test_annotate',
41
'bzrlib.tests.blackbox.test_branch',
42
'bzrlib.tests.blackbox.test_break_lock',
43
'bzrlib.tests.blackbox.test_breakin',
44
'bzrlib.tests.blackbox.test_bound_branches',
45
'bzrlib.tests.blackbox.test_bundle_info',
46
'bzrlib.tests.blackbox.test_cat',
47
'bzrlib.tests.blackbox.test_cat_revision',
48
'bzrlib.tests.blackbox.test_check',
49
'bzrlib.tests.blackbox.test_checkout',
50
'bzrlib.tests.blackbox.test_clean_tree',
51
'bzrlib.tests.blackbox.test_command_encoding',
52
'bzrlib.tests.blackbox.test_commit',
53
'bzrlib.tests.blackbox.test_conflicts',
54
'bzrlib.tests.blackbox.test_debug',
55
'bzrlib.tests.blackbox.test_diff',
56
'bzrlib.tests.blackbox.test_dump_btree',
57
'bzrlib.tests.blackbox.test_dpush',
58
'bzrlib.tests.blackbox.test_exceptions',
59
'bzrlib.tests.blackbox.test_export',
60
'bzrlib.tests.blackbox.test_filesystem_cicp',
61
'bzrlib.tests.blackbox.test_filtered_view_ops',
62
'bzrlib.tests.blackbox.test_find_merge_base',
63
'bzrlib.tests.blackbox.test_help',
64
'bzrlib.tests.blackbox.test_hooks',
65
'bzrlib.tests.blackbox.test_ignore',
66
'bzrlib.tests.blackbox.test_ignored',
67
'bzrlib.tests.blackbox.test_info',
68
'bzrlib.tests.blackbox.test_init',
69
'bzrlib.tests.blackbox.test_inventory',
70
'bzrlib.tests.blackbox.test_join',
71
'bzrlib.tests.blackbox.test_locale',
72
'bzrlib.tests.blackbox.test_log',
73
'bzrlib.tests.blackbox.test_logformats',
74
'bzrlib.tests.blackbox.test_ls',
75
'bzrlib.tests.blackbox.test_lsprof',
76
'bzrlib.tests.blackbox.test_merge',
77
'bzrlib.tests.blackbox.test_merge_directive',
78
'bzrlib.tests.blackbox.test_missing',
79
'bzrlib.tests.blackbox.test_modified',
80
'bzrlib.tests.blackbox.test_mv',
81
'bzrlib.tests.blackbox.test_nick',
82
'bzrlib.tests.blackbox.test_non_ascii',
83
'bzrlib.tests.blackbox.test_outside_wt',
84
'bzrlib.tests.blackbox.test_pack',
85
'bzrlib.tests.blackbox.test_pull',
86
'bzrlib.tests.blackbox.test_push',
87
'bzrlib.tests.blackbox.test_reconcile',
88
'bzrlib.tests.blackbox.test_reconfigure',
89
'bzrlib.tests.blackbox.test_reference',
90
'bzrlib.tests.blackbox.test_remerge',
91
'bzrlib.tests.blackbox.test_remove',
92
'bzrlib.tests.blackbox.test_re_sign',
93
'bzrlib.tests.blackbox.test_remove_tree',
94
'bzrlib.tests.blackbox.test_revert',
95
'bzrlib.tests.blackbox.test_revno',
96
'bzrlib.tests.blackbox.test_revision_history',
97
'bzrlib.tests.blackbox.test_revision_info',
98
'bzrlib.tests.blackbox.test_selftest',
99
'bzrlib.tests.blackbox.test_send',
100
'bzrlib.tests.blackbox.test_serve',
101
'bzrlib.tests.blackbox.test_shared_repository',
102
'bzrlib.tests.blackbox.test_shelve',
103
'bzrlib.tests.blackbox.test_sign_my_commits',
104
'bzrlib.tests.blackbox.test_split',
105
'bzrlib.tests.blackbox.test_status',
106
'bzrlib.tests.blackbox.test_switch',
107
'bzrlib.tests.blackbox.test_tags',
108
'bzrlib.tests.blackbox.test_testament',
109
'bzrlib.tests.blackbox.test_too_much',
110
'bzrlib.tests.blackbox.test_uncommit',
111
'bzrlib.tests.blackbox.test_unknowns',
112
'bzrlib.tests.blackbox.test_update',
113
'bzrlib.tests.blackbox.test_upgrade',
114
'bzrlib.tests.blackbox.test_version',
115
'bzrlib.tests.blackbox.test_version_info',
116
'bzrlib.tests.blackbox.test_versioning',
117
'bzrlib.tests.blackbox.test_view',
118
'bzrlib.tests.blackbox.test_whoami',
120
# add the tests for the sub modules
121
suite.addTests(loader.loadTestsFromModuleNames(testmod_names))
125
class ExternalBase(TestCaseWithTransport):
127
def check_output(self, output, *args):
128
"""Verify that the expected output matches what bzr says.
130
The output is supplied first, so that you can supply a variable
131
number of arguments to bzr.
133
self.assertEquals(self.run_bzr(*args)[0], output)