~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/bzrdir_implementations/test_bzrdir.py

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2007-02-15 15:11:31 UTC
  • mfrom: (2230.3.55 branch6)
  • Revision ID: pqm@pqm.ubuntu.com-20070215151131-1f2ce67d76e40200
Provide new branch6 format

Show diffs side-by-side

added added

removed removed

Lines of Context:
97
97
        directories = ['.']
98
98
        while directories:
99
99
            dir = directories.pop()
100
 
            for path in source.list_dir(dir):
 
100
            for path in set(source.list_dir(dir) + target.list_dir(dir)):
101
101
                path = dir + '/' + path
102
102
                if path in ignore_list:
103
103
                    continue
104
 
                stat = source.stat(path)
 
104
                try:
 
105
                    stat = source.stat(path)
 
106
                except errors.NoSuchFile:
 
107
                    self.fail('%s not in source' % path)
105
108
                if S_ISDIR(stat.st_mode):
106
109
                    self.assertTrue(S_ISDIR(target.stat(path).st_mode))
107
110
                    directories.append(path)
177
180
        dir = self.make_bzrdir('source')
178
181
        target = dir.clone(self.get_url('target'))
179
182
        self.assertNotEqual(dir.transport.base, target.transport.base)
180
 
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport)
 
183
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
 
184
                                    ['./.bzr/merge-hashes'])
181
185
    
182
186
    def test_clone_bzrdir_empty_force_new_ignored(self):
183
187
        # the force_new_repo parameter should have no effect on an empty
185
189
        dir = self.make_bzrdir('source')
186
190
        target = dir.clone(self.get_url('target'), force_new_repo=True)
187
191
        self.assertNotEqual(dir.transport.base, target.transport.base)
188
 
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport)
 
192
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
 
193
                                    ['./.bzr/merge-hashes'])
189
194
    
190
195
    def test_clone_bzrdir_repository(self):
191
196
        tree = self.make_branch_and_tree('commit_tree')
199
204
        target = dir.clone(self.get_url('target'))
200
205
        self.assertNotEqual(dir.transport.base, target.transport.base)
201
206
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
202
 
                                    ['./.bzr/repository/inventory.knit',
 
207
                                    [
 
208
                                     './.bzr/merge-hashes',
 
209
                                     './.bzr/repository/inventory.knit',
203
210
                                     ])
204
211
 
205
212
 
315
322
        target = dir.clone(self.get_url('target'))
316
323
        self.assertNotEqual(dir.transport.base, target.transport.base)
317
324
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
318
 
                                    ['./.bzr/stat-cache',
 
325
                                    [
 
326
                                     './.bzr/basis-inventory-cache',
319
327
                                     './.bzr/checkout/stat-cache',
 
328
                                     './.bzr/merge-hashes',
320
329
                                     './.bzr/repository/inventory.knit',
321
 
                                     ])
 
330
                                     './.bzr/stat-cache',
 
331
                                    ])
322
332
 
323
333
    def test_clone_bzrdir_branch_and_repo_into_shared_repo(self):
324
334
        # by default cloning into a shared repo uses the shared repo.
406
416
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
407
417
                                    ['./.bzr/stat-cache',
408
418
                                     './.bzr/checkout/stat-cache',
 
419
                                     './.bzr/checkout/merge-hashes',
 
420
                                     './.bzr/merge-hashes',
409
421
                                     './.bzr/repository/inventory.knit',
410
422
                                     ])
411
423
 
422
434
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
423
435
                                    ['./.bzr/stat-cache',
424
436
                                     './.bzr/checkout/stat-cache',
 
437
                                     './.bzr/checkout/merge-hashes',
 
438
                                     './.bzr/merge-hashes',
425
439
                                     './.bzr/repository/inventory.knit',
426
440
                                     ])
427
441
 
429
443
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
430
444
                                    ['./.bzr/stat-cache',
431
445
                                     './.bzr/checkout/stat-cache',
 
446
                                     './.bzr/checkout/merge-hashes',
 
447
                                     './.bzr/merge-hashes',
432
448
                                     './.bzr/repository/inventory.knit',
433
449
                                     ])
434
450
 
451
467
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
452
468
                                    ['./.bzr/stat-cache',
453
469
                                     './.bzr/checkout/stat-cache',
 
470
                                     './.bzr/checkout/merge-hashes',
 
471
                                     './.bzr/merge-hashes',
454
472
                                     './.bzr/repository/inventory.knit',
455
473
                                     ])
456
474
 
546
564
        self.assertNotEqual(dir.transport.base, target.transport.base)
547
565
        # testing inventory isn't reasonable for repositories
548
566
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
549
 
                                    ['./.bzr/repository/inventory.knit',
550
 
                                     './.bzr/inventory'
 
567
                                    [
 
568
                                     './.bzr/branch',
 
569
                                     './.bzr/checkout',
 
570
                                     './.bzr/inventory',
 
571
                                     './.bzr/parent',
 
572
                                     './.bzr/repository/inventory.knit',
551
573
                                     ])
552
574
        try:
553
575
            # If we happen to have a tree, we'll guarantee everything
676
698
        target = self.sproutOrSkip(dir, self.get_url('target'))
677
699
        self.assertNotEqual(dir.transport.base, target.transport.base)
678
700
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
679
 
                                    ['./.bzr/stat-cache',
 
701
                                    [
 
702
                                     './.bzr/basis-inventory-cache',
 
703
                                     './.bzr/branch/branch.conf',
 
704
                                     './.bzr/branch/parent',
 
705
                                     './.bzr/checkout',
 
706
                                     './.bzr/checkout/inventory',
680
707
                                     './.bzr/checkout/stat-cache',
681
708
                                     './.bzr/inventory',
682
 
                                     './.bzr/checkout/inventory',
 
709
                                     './.bzr/parent',
683
710
                                     './.bzr/repository/inventory.knit',
 
711
                                     './.bzr/stat-cache',
 
712
                                     './foo',
684
713
                                     ])
685
714
 
686
715
    def test_sprout_bzrdir_branch_and_repo_shared(self):
818
847
        target = self.sproutOrSkip(dir, self.get_url('target'))
819
848
        self.assertNotEqual(dir.transport.base, target.transport.base)
820
849
        self.assertDirectoriesEqual(dir.root_transport, target.root_transport,
821
 
                                    ['./.bzr/stat-cache',
 
850
                                    [
 
851
                                     './.bzr/branch/branch.conf',
 
852
                                     './.bzr/branch/parent',
822
853
                                     './.bzr/checkout/stat-cache',
 
854
                                     './.bzr/checkout/inventory',
823
855
                                     './.bzr/inventory',
824
 
                                     './.bzr/checkout/inventory',
 
856
                                     './.bzr/parent',
825
857
                                     './.bzr/repository/inventory.knit',
 
858
                                     './.bzr/stat-cache',
826
859
                                     ])
827
860
 
828
861
    def test_sprout_bzrdir_tree_branch_reference(self):