Rev 373: tests in http://people.samba.org/bzr/jelmer/bzr-svn/bzr.dev
Jelmer Vernooij
jelmer at samba.org
Wed Jan 3 12:15:30 GMT 2007
------------------------------------------------------------
revno: 373
revision-id: jelmer at samba.org-20070103121508-uccwc69drzhsk496
parent: jelmer at samba.org-20070103111926-pxiao209rh4rw3x9
committer: Jelmer Vernooij <jelmer at samba.org>
branch nick: main
timestamp: Wed 2007-01-03 13:15:08 +0100
message:
tests
modified:
checkout.py workingtree.py-20060306120941-b083cb0fdd4a69de
tests/test_workingtree.py test_workingtree.py-20060622191524-0di7bc3q1ckdbybb-1
tree.py tree.py-20060624222557-dudlwqcmkf22lt2s-1
=== modified file 'checkout.py'
--- a/checkout.py 2007-01-01 21:49:06 +0000
+++ b/checkout.py 2007-01-03 12:15:08 +0000
@@ -77,12 +77,13 @@
pass
def get_ignore_list(self):
- ignores = []
+ ignores = svn.wc.get_default_ignores(svn_config)
def dir_add(wc, prefix):
- ignores.append(os.path.join(prefix, svn.wc.get_adm_dir()))
- for pat in svn.wc.get_ignores(svn_config, wc):
- ignores.append(os.path.join(prefix, pat))
+ ignorestr = svn.wc.prop_get(svn.core.SVN_PROP_IGNORE, self.abspath(prefix).rstrip("/"), wc)
+ if ignorestr is not None:
+ for pat in ignorestr.splitlines():
+ ignores.append("./"+os.path.join(prefix, pat))
entries = svn.wc.entries_read(wc, False)
for entry in entries:
=== modified file 'tests/test_workingtree.py'
--- a/tests/test_workingtree.py 2006-12-22 19:14:38 +0000
+++ b/tests/test_workingtree.py 2007-01-03 12:15:08 +0000
@@ -22,7 +22,11 @@
from bzrlib.trace import mutter
from bzrlib.workingtree import WorkingTree
+import svn.core
+import svn.wc
+
import os
+
import format
import checkout
from repository import MAPPING_VERSION
@@ -53,6 +57,43 @@
self.assertTrue(inv.has_filename("bl"))
self.assertFalse(inv.has_filename("aa"))
+ def test_lock_write(self):
+ self.make_client('a', 'dc')
+ tree = WorkingTree.open("dc")
+ tree.lock_write()
+
+ def test_lock_read(self):
+ self.make_client('a', 'dc')
+ tree = WorkingTree.open("dc")
+ tree.lock_read()
+
+ def test_unlock(self):
+ self.make_client('a', 'dc')
+ tree = WorkingTree.open("dc")
+ tree.unlock()
+
+ def test_get_ignore_list_empty(self):
+ self.make_client('a', 'dc')
+ tree = WorkingTree.open("dc")
+ self.assertEqual(svn.core.SVN_CONFIG_DEFAULT_GLOBAL_IGNORES.split(" "), tree.get_ignore_list())
+
+ def test_get_ignore_list_onelevel(self):
+ self.make_client('a', 'dc')
+ self.client_set_prop("dc", "svn:ignore", "*.d\n*.c\n")
+ tree = WorkingTree.open("dc")
+ self.assertEqual(svn.core.SVN_CONFIG_DEFAULT_GLOBAL_IGNORES.split(" ") + ["./*.d", "./*.c"], tree.get_ignore_list())
+
+ def test_get_ignore_list_morelevel(self):
+ self.make_client('a', 'dc')
+ self.client_set_prop("dc", "svn:ignore", "*.d\n*.c\n")
+ self.build_tree({'dc/x': None})
+ self.client_add("dc/x")
+ self.client_set_prop("dc/x", "svn:ignore", "*.e\n")
+ tree = WorkingTree.open("dc")
+ self.assertEqual(svn.core.SVN_CONFIG_DEFAULT_GLOBAL_IGNORES.split(" ") + ["./*.d", "./*.c", "./x/*.e"], tree.get_ignore_list())
+
+
+
def test_add_reopen(self):
self.make_client('a', 'dc')
self.build_tree({"dc/bl": "data"})
@@ -200,9 +241,9 @@
tree = WorkingTree.open("dc")
ignorelist = tree.get_ignore_list()
- self.assertTrue("bl/test.*" in ignorelist)
- self.assertTrue("foo" in ignorelist)
- self.assertTrue("bar" in ignorelist)
+ self.assertTrue("./bl/test.*" in ignorelist)
+ self.assertTrue("./foo" in ignorelist)
+ self.assertTrue("./bar" in ignorelist)
def test_is_ignored(self):
self.make_client('a', 'dc')
=== modified file 'tree.py'
--- a/tree.py 2007-01-02 02:39:36 +0000
+++ b/tree.py 2007-01-03 12:15:08 +0000
@@ -54,29 +54,21 @@
self._repository = repository
self._revision_id = revision_id
pool = Pool()
- if revision_id == NULL_REVISION:
- self._inventory = Inventory(ROOT_ID)
- self._inventory.revision_id = NULL_REVISION
- else:
- (self.branch_path, self.revnum) = repository.parse_revision_id(revision_id)
- self._inventory = Inventory(ROOT_ID)
- self._inventory.revision_id = revision_id
- self.id_map = repository.get_fileid_map(self.revnum, self.branch_path)
- self.editor = TreeBuildEditor(self, pool)
- self.file_data = {}
-
- editor, baton = svn.delta.make_editor(self.editor, pool)
-
- root_repos = repository.transport.get_repos_root()
- reporter, reporter_baton = repository.transport.do_switch(
- self.revnum, "", True,
- os.path.join(root_repos, self.branch_path), editor, baton, pool)
-
- svn.ra.reporter2_invoke_set_path(reporter, reporter_baton, "", 0, True, None, pool)
-
- svn.ra.reporter2_invoke_finish_report(reporter, reporter_baton, pool)
-
- pool.destroy()
+ (self.branch_path, self.revnum) = repository.parse_revision_id(revision_id)
+ self._inventory = Inventory(ROOT_ID)
+ self._inventory.revision_id = revision_id
+ self.id_map = repository.get_fileid_map(self.revnum, self.branch_path)
+ self.editor = TreeBuildEditor(self, pool)
+ self.file_data = {}
+ editor, baton = svn.delta.make_editor(self.editor, pool)
+ root_repos = repository.transport.get_repos_root()
+ reporter, reporter_baton = repository.transport.do_switch(
+ self.revnum, "", True,
+ os.path.join(root_repos, self.branch_path), editor, baton, pool)
+ svn.ra.reporter2_invoke_set_path(reporter, reporter_baton, "", 0,
+ True, None, pool)
+ svn.ra.reporter2_invoke_finish_report(reporter, reporter_baton, pool)
+ pool.destroy()
def get_file_lines(self, file_id):
return osutils.split_lines(self.file_data[file_id])
@@ -100,7 +92,6 @@
def add_directory(self, path, parent_baton, copyfrom_path, copyfrom_revnum, pool):
file_id, revision_id = self.tree.id_map[path]
ie = self.tree._inventory.add_path(path, 'directory', file_id)
-
ie.revision = revision_id
return file_id
@@ -162,7 +153,6 @@
def close_file(self, path, checksum):
file_id, revision_id = self.tree.id_map[path]
-
if self.is_symlink:
ie = self.tree._inventory.add_path(path, 'symlink', file_id)
else:
@@ -206,8 +196,7 @@
class SvnBasisTree(SvnRevisionTree):
"""Optimized version of SvnRevisionTree."""
def __init__(self, workingtree, revid):
- super(SvnBasisTree, self).__init__(workingtree.branch.repository,
- revid)
+ super(SvnBasisTree, self).__init__(workingtree.branch.repository, revid)
self.workingtree = workingtree
def get_file_lines(self, file_id):
More information about the bazaar-commits
mailing list