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
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
18
"""Black-box tests for bzr.
20
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
21
command-line interface. This doesn't actually run a new interpreter but
22
22
rather starts again from the run_bzr function.
26
from bzrlib.symbol_versioning import (
30
from bzrlib import tests
33
def load_tests(basic_tests, module, loader):
34
suite = loader.suiteClass()
35
# add the tests for this module
36
suite.addTests(basic_tests)
27
from bzrlib.tests import (
29
TestCaseWithTransport,
34
from bzrlib.tests.EncodingAdapter import EncodingTestAdapter
35
import bzrlib.ui as ui
39
40
'bzrlib.tests.blackbox.test_add',
40
41
'bzrlib.tests.blackbox.test_added',
41
'bzrlib.tests.blackbox.test_alias',
42
42
'bzrlib.tests.blackbox.test_aliases',
43
43
'bzrlib.tests.blackbox.test_ancestry',
44
44
'bzrlib.tests.blackbox.test_annotate',
45
45
'bzrlib.tests.blackbox.test_branch',
46
46
'bzrlib.tests.blackbox.test_break_lock',
47
'bzrlib.tests.blackbox.test_breakin',
48
47
'bzrlib.tests.blackbox.test_bound_branches',
49
'bzrlib.tests.blackbox.test_bundle_info',
48
'bzrlib.tests.blackbox.test_bundle',
50
49
'bzrlib.tests.blackbox.test_cat',
51
'bzrlib.tests.blackbox.test_cat_revision',
52
'bzrlib.tests.blackbox.test_check',
53
50
'bzrlib.tests.blackbox.test_checkout',
54
'bzrlib.tests.blackbox.test_clean_tree',
55
51
'bzrlib.tests.blackbox.test_command_encoding',
56
52
'bzrlib.tests.blackbox.test_commit',
57
53
'bzrlib.tests.blackbox.test_conflicts',
58
'bzrlib.tests.blackbox.test_debug',
59
'bzrlib.tests.blackbox.test_deleted',
60
54
'bzrlib.tests.blackbox.test_diff',
61
'bzrlib.tests.blackbox.test_dump_btree',
62
'bzrlib.tests.blackbox.test_dpush',
63
55
'bzrlib.tests.blackbox.test_exceptions',
64
56
'bzrlib.tests.blackbox.test_export',
65
'bzrlib.tests.blackbox.test_filesystem_cicp',
66
'bzrlib.tests.blackbox.test_filtered_view_ops',
67
57
'bzrlib.tests.blackbox.test_find_merge_base',
68
58
'bzrlib.tests.blackbox.test_help',
69
'bzrlib.tests.blackbox.test_hooks',
70
59
'bzrlib.tests.blackbox.test_ignore',
71
60
'bzrlib.tests.blackbox.test_ignored',
72
61
'bzrlib.tests.blackbox.test_info',
73
62
'bzrlib.tests.blackbox.test_init',
74
'bzrlib.tests.blackbox.test_inventory',
75
'bzrlib.tests.blackbox.test_join',
76
'bzrlib.tests.blackbox.test_locale',
77
63
'bzrlib.tests.blackbox.test_log',
78
64
'bzrlib.tests.blackbox.test_logformats',
79
'bzrlib.tests.blackbox.test_lookup_revision',
80
65
'bzrlib.tests.blackbox.test_ls',
81
'bzrlib.tests.blackbox.test_lsprof',
82
66
'bzrlib.tests.blackbox.test_merge',
83
'bzrlib.tests.blackbox.test_merge_directive',
84
67
'bzrlib.tests.blackbox.test_missing',
85
'bzrlib.tests.blackbox.test_modified',
86
68
'bzrlib.tests.blackbox.test_mv',
87
'bzrlib.tests.blackbox.test_nick',
88
'bzrlib.tests.blackbox.test_non_ascii',
89
69
'bzrlib.tests.blackbox.test_outside_wt',
90
'bzrlib.tests.blackbox.test_pack',
91
70
'bzrlib.tests.blackbox.test_pull',
92
71
'bzrlib.tests.blackbox.test_push',
93
72
'bzrlib.tests.blackbox.test_reconcile',
94
'bzrlib.tests.blackbox.test_reconfigure',
95
'bzrlib.tests.blackbox.test_reference',
96
73
'bzrlib.tests.blackbox.test_remerge',
97
74
'bzrlib.tests.blackbox.test_remove',
98
75
'bzrlib.tests.blackbox.test_re_sign',
99
'bzrlib.tests.blackbox.test_remove_tree',
100
76
'bzrlib.tests.blackbox.test_revert',
101
77
'bzrlib.tests.blackbox.test_revno',
102
78
'bzrlib.tests.blackbox.test_revision_history',
103
79
'bzrlib.tests.blackbox.test_revision_info',
104
'bzrlib.tests.blackbox.test_rmbranch',
105
80
'bzrlib.tests.blackbox.test_selftest',
106
'bzrlib.tests.blackbox.test_send',
107
'bzrlib.tests.blackbox.test_serve',
108
81
'bzrlib.tests.blackbox.test_shared_repository',
109
'bzrlib.tests.blackbox.test_shelve',
110
82
'bzrlib.tests.blackbox.test_sign_my_commits',
111
'bzrlib.tests.blackbox.test_split',
112
83
'bzrlib.tests.blackbox.test_status',
113
'bzrlib.tests.blackbox.test_switch',
114
'bzrlib.tests.blackbox.test_tags',
115
'bzrlib.tests.blackbox.test_testament',
116
84
'bzrlib.tests.blackbox.test_too_much',
117
85
'bzrlib.tests.blackbox.test_uncommit',
118
'bzrlib.tests.blackbox.test_unknowns',
119
86
'bzrlib.tests.blackbox.test_update',
120
87
'bzrlib.tests.blackbox.test_upgrade',
121
'bzrlib.tests.blackbox.test_version',
122
'bzrlib.tests.blackbox.test_version_info',
123
88
'bzrlib.tests.blackbox.test_versioning',
124
'bzrlib.tests.blackbox.test_view',
125
89
'bzrlib.tests.blackbox.test_whoami',
127
# add the tests for the sub modules
128
suite.addTests(loader.loadTestsFromModuleNames(testmod_names))
92
'bzrlib.tests.blackbox.test_non_ascii',
96
suite = loader.loadTestsFromModuleNames(testmod_names)
98
adapter = EncodingTestAdapter()
99
adapt_modules(test_encodings, adapter, loader, suite)
132
class ExternalBase(tests.TestCaseWithTransport):
133
"""Don't use this class anymore, use TestCaseWithTransport or similar"""
135
@deprecated_method(deprecated_in((2, 2, 0)))
136
def check_output(self, output, *args):
137
"""Verify that the expected output matches what bzr says.
139
The output is supplied first, so that you can supply a variable
140
number of arguments to bzr.
142
self.assertEquals(self.run_bzr(*args)[0], output)
104
class ExternalBase(TestCaseWithTransport):
106
def runbzr(self, args, retcode=0, backtick=False):
107
if isinstance(args, basestring):
110
return self.run_bzr_captured(args, retcode=retcode)[0]
112
return self.run_bzr_captured(args, retcode=retcode)
115
class TestUIFactory(ui.CLIUIFactory):
116
"""A UI Factory for testing - hide the progress bar but emit note()s."""
121
super(TestUIFactory, self).__init__()
123
self.stdout = sys.stdout
127
self.stderr = sys.stderr
132
"""See progress.ProgressBar.clear()."""
134
def clear_term(self):
135
"""See progress.ProgressBar.clear_term()."""
137
def clear_term(self):
138
"""See progress.ProgressBar.clear_term()."""
141
"""See progress.ProgressBar.finished()."""
143
def note(self, fmt_string, *args, **kwargs):
144
"""See progress.ProgressBar.note()."""
145
self.stdout.write((fmt_string + "\n") % args)
147
def progress_bar(self):
150
def nested_progress_bar(self):
153
def update(self, message, count=None, total=None):
154
"""See progress.ProgressBar.update()."""