~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/test_permissions.py

Move check_mode to TestCase.assertMode to make it generally accessible.

Show diffs side-by-side

added added

removed removed

Lines of Context:
37
37
from bzrlib.branch import Branch
38
38
from bzrlib.tests import TestCaseInTempDir, TestSkipped
39
39
from bzrlib.tests.test_sftp_transport import TestCaseWithSFTPServer
40
 
from bzrlib.tests.test_transport import check_mode
 
40
from bzrlib.transport import get_transport
41
41
 
42
42
 
43
43
def chmod_r(base, file_mode, dir_mode):
63
63
    :param include_base: If false, only check the subdirectories
64
64
    """
65
65
    assert os.path.isdir(base)
 
66
    t = get_transport(".")
66
67
    if include_base:
67
 
        check_mode(test, base, dir_mode)
 
68
        test.assertMode(t, base, dir_mode)
68
69
    for root, dirs, files in os.walk(base):
69
70
        for d in dirs:
70
71
            p = os.path.join(root, d)
71
 
            check_mode(test, p, dir_mode)
 
72
            test.assertMode(t, p, dir_mode)
72
73
        for f in files:
73
74
            p = os.path.join(root, f)
74
 
            check_mode(test, p, file_mode)
 
75
            test.assertMode(t, p, file_mode)
75
76
 
76
77
 
77
78
def assertEqualMode(test, mode, mode_test):
303
304
            t = SFTPTransport(self._sftp_url)
304
305
            # Direct access should be masked by umask
305
306
            t._sftp_open_exclusive('a', mode=0666).write('foo\n')
306
 
            check_mode(self, 'a', 0666 &~umask)
 
307
            self.assertMode(t, 'a', 0666 &~umask)
307
308
 
308
309
            # but Transport overrides umask
309
310
            t.put('b', 'txt', mode=0666)
310
 
            check_mode(self, 'b', 0666)
 
311
            self.assertMode(t, 'b', 0666)
311
312
 
312
313
            t._sftp.mkdir('c', mode=0777)
313
 
            check_mode(self, 'c', 0777 &~umask)
 
314
            self.assertMode(t, 'c', 0777 &~umask)
314
315
 
315
316
            t.mkdir('d', mode=0777)
316
 
            check_mode(self, 'd', 0777)
 
317
            self.assertMode(t, 'd', 0777)
317
318
        finally:
318
319
            os.umask(original_umask)
319
320