37
38
import bzrlib.branch
38
39
from bzrlib.branch import Branch
39
40
from bzrlib.tests import TestCaseWithTransport
40
from bzrlib.transport import get_transport
41
41
from bzrlib.upgrade import upgrade
44
44
class TestUpgrade(TestCaseWithTransport):
46
def test_build_tree(self):
47
"""Test tree-building test helper"""
48
self.build_tree_contents(_upgrade1_template)
49
self.failUnlessExists('foo')
50
self.failUnlessExists('.bzr/README')
52
46
def test_upgrade_simple(self):
53
47
"""Upgrade simple v0.0.4 format to latest format"""
54
48
eq = self.assertEquals
81
75
# check a backup was made:
82
76
backup_dir = 'backup.bzr.~1~'
83
transport = get_transport(b.base)
84
transport.stat(backup_dir)
85
transport.stat(backup_dir + '/README')
86
transport.stat(backup_dir + '/branch-format')
87
transport.stat(backup_dir + '/revision-history')
88
transport.stat(backup_dir + '/merged-patches')
89
transport.stat(backup_dir + '/pending-merged-patches')
90
transport.stat(backup_dir + '/pending-merges')
91
transport.stat(backup_dir + '/branch-name')
92
transport.stat(backup_dir + '/branch-lock')
93
transport.stat(backup_dir + '/inventory')
94
transport.stat(backup_dir + '/stat-cache')
95
transport.stat(backup_dir + '/text-store')
96
transport.stat(backup_dir + '/text-store/foo-20051004035611-1591048e9dc7c2d4.gz')
97
transport.stat(backup_dir + '/text-store/foo-20051004035756-4081373d897c3453.gz')
98
transport.stat(backup_dir + '/inventory-store/')
99
transport.stat(backup_dir + '/inventory-store/mbp@sourcefrog.net-20051004035611-176b16534b086b3c.gz')
100
transport.stat(backup_dir + '/inventory-store/mbp@sourcefrog.net-20051004035756-235f2b7dcdddd8dd.gz')
101
transport.stat(backup_dir + '/revision-store/')
102
transport.stat(backup_dir + '/revision-store/mbp@sourcefrog.net-20051004035611-176b16534b086b3c.gz')
103
transport.stat(backup_dir + '/revision-store/mbp@sourcefrog.net-20051004035756-235f2b7dcdddd8dd.gz')
77
t = transport.get_transport(b.base)
79
t.stat(backup_dir + '/README')
80
t.stat(backup_dir + '/branch-format')
81
t.stat(backup_dir + '/revision-history')
82
t.stat(backup_dir + '/merged-patches')
83
t.stat(backup_dir + '/pending-merged-patches')
84
t.stat(backup_dir + '/pending-merges')
85
t.stat(backup_dir + '/branch-name')
86
t.stat(backup_dir + '/branch-lock')
87
t.stat(backup_dir + '/inventory')
88
t.stat(backup_dir + '/stat-cache')
89
t.stat(backup_dir + '/text-store')
90
t.stat(backup_dir + '/text-store/foo-20051004035611-1591048e9dc7c2d4.gz')
91
t.stat(backup_dir + '/text-store/foo-20051004035756-4081373d897c3453.gz')
92
t.stat(backup_dir + '/inventory-store/')
93
t.stat(backup_dir + '/inventory-store/mbp@sourcefrog.net-20051004035611-176b16534b086b3c.gz')
94
t.stat(backup_dir + '/inventory-store/mbp@sourcefrog.net-20051004035756-235f2b7dcdddd8dd.gz')
95
t.stat(backup_dir + '/revision-store/')
96
t.stat(backup_dir + '/revision-store/mbp@sourcefrog.net-20051004035611-176b16534b086b3c.gz')
97
t.stat(backup_dir + '/revision-store/mbp@sourcefrog.net-20051004035756-235f2b7dcdddd8dd.gz')
105
99
def test_upgrade_with_ghosts(self):
106
100
"""Upgrade v0.0.4 tree containing ghost references.
153
147
# such a branch to metadir must not setup a working tree.
154
148
self.build_tree_contents(_upgrade1_template)
155
149
upgrade('.', bzrdir.BzrDirFormat6())
156
transport = get_transport('.')
157
transport.delete_multi(['.bzr/pending-merges', '.bzr/inventory'])
158
self.assertFalse(transport.has('.bzr/stat-cache'))
150
t = transport.get_transport('.')
151
t.delete_multi(['.bzr/pending-merges', '.bzr/inventory'])
152
self.assertFalse(t.has('.bzr/stat-cache'))
159
153
# XXX: upgrade fails if a backup.bzr is already present
160
154
# -- David Allouche 2006-08-11
161
transport.delete_tree('backup.bzr.~1~')
155
t.delete_tree('backup.bzr.~1~')
162
156
# At this point, we have a format6 branch without checkout files.
163
157
upgrade('.', bzrdir.BzrDirMetaFormat1())
164
158
# The upgrade should not have set up a working tree.
276
270
'This is a Bazaar control directory.\n'
277
271
'Do not change any files in this directory.\n'
278
'See http://bazaar-vcs.org/ for more information about Bazaar.\n'),
272
'See http://bazaar.canonical.com/ for more information about Bazaar.\n'),
279
273
('.bzr/branch-format', 'Bazaar-NG branch, format 0.0.4\n'),
280
274
('.bzr/revision-history',
281
275
'mbp@sourcefrog.net-20051004035611-176b16534b086b3c\n'
317
311
( './.bzr/README',
318
312
'This is a Bazaar control directory.\n'
319
313
'Do not change any files in this directory.\n'
320
'See http://bazaar-vcs.org/ for more information about Bazaar.\n'
314
'See http://bazaar.canonical.com/ for more information about Bazaar.\n'
322
316
( './.bzr/branch-format',
323
317
'Bazaar-NG branch, format 0.0.4\n'
383
377
( './.bzr/README',
384
378
'This is a Bazaar control directory.\n'
385
379
'Do not change any files in this directory.\n'
386
'See http://bazaar-vcs.org/ for more information about Bazaar.\n'
380
'See http://bazaar.canonical.com/ for more information about Bazaar.\n'
388
382
( './.bzr/branch-format',
389
383
'Bazaar-NG branch, format 0.0.4\n'