~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_transform.py

  • Committer: Wouter van Heyst
  • Date: 2006-06-07 11:13:02 UTC
  • mfrom: (1747 +trunk)
  • mto: This revision was merged to the branch mainline in revision 1752.
  • Revision ID: larstiq@larstiq.dyndns.org-20060607111302-bce5a90c86f0d764
[merge] bzr.dev 1747

Show diffs side-by-side

added added

removed removed

Lines of Context:
31
31
import bzrlib.urlutils as urlutils
32
32
 
33
33
class TestTreeTransform(TestCaseInTempDir):
 
34
 
34
35
    def setUp(self):
35
36
        super(TestTreeTransform, self).setUp()
36
37
        self.wt = BzrDir.create_standalone_workingtree('.')
494
495
        self.assertRaises(NotVersionedError, find_interesting, wt, wt,
495
496
                          ['uvfile'])
496
497
 
 
498
    def test_set_executability_order(self):
 
499
        """Ensure that executability behaves the same, no matter what order.
 
500
        
 
501
        - create file and set executability simultaneously
 
502
        - create file and set executability afterward
 
503
        - unsetting the executability of a file whose executability has not been
 
504
        declared should throw an exception (this may happen when a
 
505
        merge attempts to create a file with a duplicate ID)
 
506
        """
 
507
        transform, root = self.get_transform()
 
508
        wt = transform._tree
 
509
        transform.new_file('set_on_creation', root, 'Set on creation', 'soc',
 
510
                           True)
 
511
        sac = transform.new_file('set_after_creation', root, 'Set after creation', 'sac')
 
512
        transform.set_executability(True, sac)
 
513
        uws = transform.new_file('unset_without_set', root, 'Unset badly', 'uws')
 
514
        self.assertRaises(KeyError, transform.set_executability, None, uws)
 
515
        transform.apply()
 
516
        self.assertTrue(wt.is_executable('soc'))
 
517
        self.assertTrue(wt.is_executable('sac'))
 
518
 
497
519
 
498
520
class TransformGroup(object):
499
521
    def __init__(self, dirname):