Mercurial > hgsubversion
comparison tests/test_svnwrap.py @ 481:e5a9c824ffbf
Make tearDown() be able to delete read-only files to avoid an exception when removing 'testrepo/db/format'
author | Risto Kankkunen <risto.kankkunen@iki.fi> |
---|---|
date | Wed, 29 Jul 2009 18:03:02 +0300 |
parents | 7fa100ae1a11 |
children | a42fb4f1716a |
comparison
equal
deleted
inserted
replaced
480:7fa100ae1a11 | 481:e5a9c824ffbf |
---|---|
6 import unittest | 6 import unittest |
7 | 7 |
8 import test_util | 8 import test_util |
9 | 9 |
10 from hgsubversion import svnwrap | 10 from hgsubversion import svnwrap |
11 | |
12 import os | |
13 import stat | |
14 def force_rm(path): | |
15 os.chmod( | |
16 path, | |
17 os.stat(path).st_mode | stat.S_IWUSR | stat.S_IWGRP | stat.S_IWOTH | |
18 ) | |
19 os.remove(path) | |
11 | 20 |
12 class TestBasicRepoLayout(unittest.TestCase): | 21 class TestBasicRepoLayout(unittest.TestCase): |
13 def setUp(self): | 22 def setUp(self): |
14 self.tmpdir = tempfile.mkdtemp('svnwrap_test') | 23 self.tmpdir = tempfile.mkdtemp('svnwrap_test') |
15 self.repo_path = '%s/testrepo' % self.tmpdir | 24 self.repo_path = '%s/testrepo' % self.tmpdir |
23 stderr=subprocess.STDOUT) | 32 stderr=subprocess.STDOUT) |
24 assert proc == 0 | 33 assert proc == 0 |
25 self.repo = svnwrap.SubversionRepo(test_util.fileurl(self.repo_path)) | 34 self.repo = svnwrap.SubversionRepo(test_util.fileurl(self.repo_path)) |
26 | 35 |
27 def tearDown(self): | 36 def tearDown(self): |
28 shutil.rmtree(self.tmpdir) | 37 shutil.rmtree(self.tmpdir, onerror=lambda func, path, e: force_rm(path)) |
29 | 38 |
30 | 39 |
31 def test_num_revs(self): | 40 def test_num_revs(self): |
32 revs = list(self.repo.revisions()) | 41 revs = list(self.repo.revisions()) |
33 self.assertEqual(len(revs), 7) | 42 self.assertEqual(len(revs), 7) |