streamline svn test setup a bit, clear caches on setup-restore, hopefully will erase random failures with test_export.
--HG-- branch : trunk
This commit is contained in:
		
							parent
							
								
									4656bc4c97
								
							
						
					
					
						commit
						89f178bf4d
					
				|  | @ -16,6 +16,9 @@ class BasicCache(object): | ||||||
|         self.prunenum = int(maxentries - maxentries/8) |         self.prunenum = int(maxentries - maxentries/8) | ||||||
|         self._dict = {} |         self._dict = {} | ||||||
| 
 | 
 | ||||||
|  |     def clear(self): | ||||||
|  |         self._dict.clear() | ||||||
|  | 
 | ||||||
|     def _getentry(self, key): |     def _getentry(self, key): | ||||||
|         return self._dict[key] |         return self._dict[key] | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -213,6 +213,17 @@ checkin message msg.""" | ||||||
|         lines = [x.strip() for x in lines[1:]] |         lines = [x.strip() for x in lines[1:]] | ||||||
|         return svncommon.PropListDict(self, lines) |         return svncommon.PropListDict(self, lines) | ||||||
| 
 | 
 | ||||||
|  |     def info(self): | ||||||
|  |         """ return an Info structure with svn-provided information. """ | ||||||
|  |         parent = self.dirpath() | ||||||
|  |         nameinfo_seq = parent._listdir_nameinfo() | ||||||
|  |         bn = self.basename | ||||||
|  |         for name, info in nameinfo_seq: | ||||||
|  |             if name == bn: | ||||||
|  |                 return info | ||||||
|  |         raise py.error.ENOENT(self) | ||||||
|  | 
 | ||||||
|  | 
 | ||||||
|     def _listdir_nameinfo(self): |     def _listdir_nameinfo(self): | ||||||
|         """ return sequence of name-info directory entries of self """ |         """ return sequence of name-info directory entries of self """ | ||||||
|         def builder(): |         def builder(): | ||||||
|  |  | ||||||
|  | @ -235,16 +235,6 @@ class SvnPathBase(common.PathBase): | ||||||
|         content = self._proplist() |         content = self._proplist() | ||||||
|         return content |         return content | ||||||
| 
 | 
 | ||||||
|     def info(self): |  | ||||||
|         """ return an Info structure with svn-provided information. """ |  | ||||||
|         parent = self.dirpath() |  | ||||||
|         nameinfo_seq = parent._listdir_nameinfo() |  | ||||||
|         bn = self.basename |  | ||||||
|         for name, info in nameinfo_seq: |  | ||||||
|             if name == bn: |  | ||||||
|                 return info |  | ||||||
|         raise py.error.ENOENT(self) |  | ||||||
| 
 |  | ||||||
|     def size(self): |     def size(self): | ||||||
|         """ Return the size of the file content of the Path. """ |         """ Return the size of the file content of the Path. """ | ||||||
|         return self.info().size |         return self.info().size | ||||||
|  |  | ||||||
|  | @ -378,7 +378,7 @@ class CommonFSTests(object): | ||||||
|                 newp.move(p) |                 newp.move(p) | ||||||
|                 assert p.check() |                 assert p.check() | ||||||
| 
 | 
 | ||||||
|     def test_move_directory(self, path1): |     def test_move_dir(self, path1): | ||||||
|         source = path1.join('sampledir')  |         source = path1.join('sampledir')  | ||||||
|         dest = path1.join('moveddir')  |         dest = path1.join('moveddir')  | ||||||
|         source.move(dest) |         source.move(dest) | ||||||
|  |  | ||||||
|  | @ -76,3 +76,5 @@ def restore_repowc(obj): | ||||||
|     repo.remove() |     repo.remove() | ||||||
|     savedrepo.move(repo) |     savedrepo.move(repo) | ||||||
|     savedwc.localpath.move(wc.localpath) |     savedwc.localpath.move(wc.localpath) | ||||||
|  |     py.path.svnurl._lsnorevcache.clear() | ||||||
|  |     py.path.svnurl._lsrevcache.clear() | ||||||
|  |  | ||||||
|  | @ -22,6 +22,9 @@ class BasicCacheAPITest: | ||||||
|         self.cache.delentry(100) |         self.cache.delentry(100) | ||||||
|         py.test.raises(KeyError, "self.cache.delentry(100, raising=True)") |         py.test.raises(KeyError, "self.cache.delentry(100, raising=True)") | ||||||
| 
 | 
 | ||||||
|  |     def test_clear(self): | ||||||
|  |         self.cache.clear() | ||||||
|  | 
 | ||||||
| class TestBuildcostAccess(BasicCacheAPITest): | class TestBuildcostAccess(BasicCacheAPITest): | ||||||
|     cache = cacheutil.BuildcostAccessCache(maxentries=128) |     cache = cacheutil.BuildcostAccessCache(maxentries=128) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -13,22 +13,6 @@ class TestSvnURLCommandPath(CommonSvnTests): | ||||||
|     def test_load(self, path1): |     def test_load(self, path1): | ||||||
|         super(TestSvnURLCommandPath, self).test_load(path1) |         super(TestSvnURLCommandPath, self).test_load(path1) | ||||||
| 
 | 
 | ||||||
|     def test_move_file(self, path1):  # overrides base class |  | ||||||
|         p = path1.ensure('origfile') |  | ||||||
|         newp = p.dirpath('newfile') |  | ||||||
|         p.move(newp) |  | ||||||
|         assert newp.check(file=1) |  | ||||||
|         newp.remove() |  | ||||||
|         assert not p.check() |  | ||||||
| 
 |  | ||||||
|     def test_move_dir(self, path1):  # overrides base class |  | ||||||
|         p = path1.ensure('origdir', dir=1) |  | ||||||
|         newp = p.dirpath('newdir') |  | ||||||
|         p.move(newp) |  | ||||||
|         assert newp.check(dir=1) |  | ||||||
|         newp.remove() |  | ||||||
|         assert not p.check() |  | ||||||
| 
 |  | ||||||
|     def test_svnurl_needs_arg(self, path1): |     def test_svnurl_needs_arg(self, path1): | ||||||
|         py.test.raises(TypeError, "py.path.svnurl()") |         py.test.raises(TypeError, "py.path.svnurl()") | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -28,18 +28,6 @@ def pytest_funcarg__path1(request): | ||||||
|     return wc |     return wc | ||||||
| 
 | 
 | ||||||
| class TestWCSvnCommandPath(CommonSvnTests): | class TestWCSvnCommandPath(CommonSvnTests): | ||||||
|     def test_move_file(self, path1):  # overrides base class |  | ||||||
|         try: |  | ||||||
|             super(TestWCSvnCommandPath, self).test_move_file(path1) |  | ||||||
|         finally: |  | ||||||
|             path1.revert(rec=1) |  | ||||||
| 
 |  | ||||||
|     def test_move_directory(self, path1): # overrides base class |  | ||||||
|         try: |  | ||||||
|             super(TestWCSvnCommandPath, self).test_move_directory(path1) |  | ||||||
|         finally: |  | ||||||
|             path1.revert(rec=1) |  | ||||||
| 
 |  | ||||||
|     def test_status_attributes_simple(self, path1): |     def test_status_attributes_simple(self, path1): | ||||||
|         def assert_nochange(p): |         def assert_nochange(p): | ||||||
|             s = p.status() |             s = p.status() | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue