17
17
"""Tests for the 'check' CLI command."""
19
from bzrlib.tests import ChrootedTestCase
20
from bzrlib.tests.blackbox import ExternalBase
23
class TestCheck(ExternalBase):
19
from breezy.tests import ChrootedTestCase
20
from breezy.tests import TestCaseWithTransport
23
class TestCheck(TestCaseWithTransport):
25
25
def test_check_no_tree(self):
26
26
self.make_branch('.')
34
34
tree = self.make_branch_and_tree('.')
35
35
tree.commit('hallelujah')
36
36
out, err = self.run_bzr('check')
37
self.assertContainsRe(err, r"Checking working tree at '.*'\.\n")
38
self.assertContainsRe(err, r"Checking repository at '.*'\.\n")
37
self.assertContainsRe(err, br"Checking working tree at '.*'\.\n")
38
self.assertContainsRe(err, br"Checking repository at '.*'\.\n")
39
39
# the root directory may be in the texts for rich root formats
40
self.assertContainsRe(err, r"checked repository.*\n"
40
self.assertContainsRe(err, br"checked repository.*\n"
44
self.assertContainsRe(err, r"Checking branch at '.*'\.\n")
45
self.assertContainsRe(err, r"checked branch.*")
44
self.assertContainsRe(err, br"Checking branch at '.*'\.\n")
45
self.assertContainsRe(err, br"checked branch.*")
47
47
def test_check_branch(self):
48
48
tree = self.make_branch_and_tree('.')
50
50
out, err = self.run_bzr('check --branch')
51
self.assertContainsRe(err, r"^Checking branch at '.*'\.\n"
51
self.assertContainsRe(err, br"^Checking branch at '.*'\.\n"
54
54
def test_check_repository(self):
55
55
tree = self.make_branch_and_tree('.')
57
57
out, err = self.run_bzr('check --repo')
58
self.assertContainsRe(err, r"^Checking repository at '.*'\.\n"
59
r"checked repository.*\n"
58
self.assertContainsRe(err, br"^Checking repository at '.*'\.\n"
59
br"checked repository.*\n"
64
64
def test_check_tree(self):
65
65
tree = self.make_branch_and_tree('.')
67
67
out, err = self.run_bzr('check --tree')
68
self.assertContainsRe(err, r"^Checking working tree at '.*'\.\n$")
68
self.assertContainsRe(err, br"^Checking working tree at '.*'\.\n$")
70
70
def test_partial_check(self):
71
71
tree = self.make_branch_and_tree('.')
73
73
out, err = self.run_bzr('check --tree --branch')
74
self.assertContainsRe(err, r"^Checking working tree at '.*'\.\n"
75
r"Checking branch at '.*'\.\n"
74
self.assertContainsRe(err, br"^Checking working tree at '.*'\.\n"
75
br"Checking branch at '.*'\.\n"
78
78
def test_check_missing_tree(self):
79
79
branch = self.make_branch('.')
84
84
branch = self.make_branch('.')
85
85
out, err = self.run_bzr('check --tree --branch')
86
86
self.assertContainsRe(err,
87
r"Checking branch at '.*'\.\n"
88
r"No working tree found at specified location\.\n"
87
br"Checking branch at '.*'\.\n"
88
br"No working tree found at specified location\.\n"
91
91
def test_check_missing_branch_in_shared_repo(self):
92
92
self.make_repository('shared', shared=True)
93
93
out, err = self.run_bzr('check --branch shared')
94
self.assertEqual(err, "No branch found at specified location.\n")
94
self.assertEqual(err, b"No branch found at specified location.\n")
97
97
class ChrootedCheckTests(ChrootedTestCase):
99
99
def test_check_missing_branch(self):
100
100
out, err = self.run_bzr(
101
101
'check --branch %s' % self.get_readonly_url(''))
102
self.assertEqual(err, "No branch found at specified location.\n")
102
self.assertEqual(err, b"No branch found at specified location.\n")
104
104
def test_check_missing_repository(self):
105
105
out, err = self.run_bzr('check --repo %s' % self.get_readonly_url(''))
106
self.assertEqual(err, "No repository found at specified location.\n")
106
self.assertEqual(err, b"No repository found at specified location.\n")
108
108
def test_check_missing_everything(self):
109
109
out, err = self.run_bzr('check %s' % self.get_readonly_url(''))
110
self.assertEqual(err, "No working tree found at specified location.\n"
111
"No branch found at specified location.\n"
112
"No repository found at specified location.\n")
110
self.assertEqual(err, b"No working tree found at specified location.\n"
111
b"No branch found at specified location.\n"
112
b"No repository found at specified location.\n")