~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_transform.py

  • Committer: Martin Pool
  • Date: 2008-06-11 02:36:40 UTC
  • mfrom: (3490 +trunk)
  • mto: This revision was merged to the branch mainline in revision 3492.
  • Revision ID: mbp@sourcefrog.net-20080611023640-db0lqd75yueksdw7
Merge news

Show diffs side-by-side

added added

removed removed

Lines of Context:
51
51
    )
52
52
from bzrlib.transform import (TreeTransform, ROOT_PARENT, FinalPaths, 
53
53
                              resolve_conflicts, cook_conflicts, 
54
 
                              find_interesting, build_tree, get_backup_name,
55
 
                              change_entry, _FileMover, resolve_checkout,
 
54
                              build_tree, get_backup_name,
 
55
                              _FileMover, resolve_checkout,
56
56
                              TransformPreview)
57
57
 
58
58
class TestTreeTransform(tests.TestCaseWithTransport):
64
64
 
65
65
    def get_transform(self):
66
66
        transform = TreeTransform(self.wt)
67
 
        #self.addCleanup(transform.finalize)
 
67
        self.addCleanup(transform.finalize)
68
68
        return transform, transform.root
69
69
 
70
70
    def test_existing_limbo(self):
85
85
    def test_existing_pending_deletion(self):
86
86
        transform, root = self.get_transform()
87
87
        deletion_path = self._limbodir = urlutils.local_path_from_url(
88
 
            transform._tree._control_files.controlfilename('pending-deletion'))
 
88
            transform._tree._transport.abspath('pending-deletion'))
89
89
        os.mkdir(pathjoin(deletion_path, 'blocking-directory'))
90
90
        self.assertRaises(ImmortalPendingDeletion, transform.apply)
91
91
        self.assertRaises(LockError, self.wt.unlock)
747
747
        rename.set_executability(True, myfile)
748
748
        rename.apply()
749
749
 
750
 
    def test_find_interesting(self):
751
 
        create, root = self.get_transform()
752
 
        wt = create._tree
753
 
        create.new_file('vfile', root, 'myfile-text', 'myfile-id')
754
 
        create.new_file('uvfile', root, 'othertext')
755
 
        create.apply()
756
 
        result = self.applyDeprecated(symbol_versioning.zero_fifteen,
757
 
            find_interesting, wt, wt, ['vfile'])
758
 
        self.assertEqual(result, set(['myfile-id']))
759
 
 
760
750
    def test_set_executability_order(self):
761
751
        """Ensure that executability behaves the same, no matter what order.
762
752
        
1172
1162
        transform.cancel_creation(parent)
1173
1163
        transform.finalize()
1174
1164
 
1175
 
    def test_change_entry(self):
1176
 
        txt = 'bzrlib.transform.change_entry was deprecated in version 0.90.'
1177
 
        self.callDeprecated([txt], change_entry, None, None, None, None, None,
1178
 
            None, None, None)
1179
 
 
1180
1165
    def test_case_insensitive_clash(self):
1181
1166
        self.requireFeature(CaseInsensitiveFilesystemFeature)
1182
1167
        def tt_helper():
1719
1704
        self.assertEqual([], list(target.iter_changes(revision_tree)))
1720
1705
        self.assertTrue(source.is_executable('file1-id'))
1721
1706
 
 
1707
    def test_case_insensitive_build_tree_inventory(self):
 
1708
        source = self.make_branch_and_tree('source')
 
1709
        self.build_tree(['source/file', 'source/FILE'])
 
1710
        source.add(['file', 'FILE'], ['lower-id', 'upper-id'])
 
1711
        source.commit('added files')
 
1712
        # Don't try this at home, kids!
 
1713
        # Force the tree to report that it is case insensitive
 
1714
        target = self.make_branch_and_tree('target')
 
1715
        target.case_sensitive = False
 
1716
        build_tree(source.basis_tree(), target, source, delta_from_tree=True)
 
1717
        self.assertEqual('file.moved', target.id2path('lower-id'))
 
1718
        self.assertEqual('FILE', target.id2path('upper-id'))
 
1719
 
1722
1720
 
1723
1721
class MockTransform(object):
1724
1722