Rev 2363: Start splitting up the overzealous test into focused tests. in http://bzr.arbash-meinel.com/branches/bzr/0.15-dev/iter_changes_unicode_unknowns
John Arbash Meinel
john at arbash-meinel.com
Thu Mar 15 23:10:33 GMT 2007
At http://bzr.arbash-meinel.com/branches/bzr/0.15-dev/iter_changes_unicode_unknowns
------------------------------------------------------------
revno: 2363
revision-id: john at arbash-meinel.com-20070315231020-441uvn2zn3qs2p52
parent: john at arbash-meinel.com-20070315223535-d3d4964oe1hc8zhg
committer: John Arbash Meinel <john at arbash-meinel.com>
branch nick: iter_changes_unicode_unknowns
timestamp: Thu 2007-03-15 18:10:20 -0500
message:
Start splitting up the overzealous test into focused tests.
And find the bug in add (I was decoding the wrong parameter)
modified:
bzrlib/tests/intertree_implementations/test_compare.py test_compare.py-20060724101752-09ysswo1a92uqyoz-2
bzrlib/workingtree_4.py workingtree_4.py-20070208044105-5fgpc5j3ljlh5q6c-1
-------------- next part --------------
=== modified file 'bzrlib/tests/intertree_implementations/test_compare.py'
--- a/bzrlib/tests/intertree_implementations/test_compare.py 2007-03-15 22:35:35 +0000
+++ b/bzrlib/tests/intertree_implementations/test_compare.py 2007-03-15 23:10:20 +0000
@@ -1052,6 +1052,70 @@
])
self.assertEqual(expected, self.do_iter_changes(tree1, tree2))
+ def test_added_unicode(self):
+ tree1 = self.make_branch_and_tree('tree1')
+ tree2 = self.make_to_branch_and_tree('tree2')
+ root_id = tree1.get_root_id()
+ tree2.set_root_id(root_id)
+
+ # u'\u03b1' == GREEK SMALL LETTER ALPHA
+ # u'\u03c9' == GREEK SMALL LETTER OMEGA
+ a_id = u'\u03b1-id'.encode('utf8')
+ added_id = u'\u03c9_added_id'.encode('utf8')
+ self.build_tree([u'tree1/\u03b1/',
+ u'tree2/\u03b1/',
+ u'tree2/\u03b1/\u03c9-added',
+ ])
+ tree1.add([u'\u03b1'], [a_id])
+ tree2.add([u'\u03b1', u'\u03b1/\u03c9-added'], [a_id, added_id])
+
+ tree1, tree2 = self.mutable_trees_to_test_trees(tree1, tree2)
+ tree1.lock_read()
+ self.addCleanup(tree1.unlock)
+ tree2.lock_read()
+ self.addCleanup(tree2.unlock)
+
+ expected = sorted([
+ self.added(tree2, added_id),
+ ])
+ self.assertEqual(expected,
+ self.do_iter_changes(tree1, tree2))
+ expected = sorted([
+ self.added(tree2, added_id),
+ ])
+ self.assertEqual(expected,
+ self.do_iter_changes(tree1, tree2,
+ specific_files=[u'\u03b1']))
+
+ def test_removed_unicode(self):
+ tree1 = self.make_branch_and_tree('tree1')
+ tree2 = self.make_to_branch_and_tree('tree2')
+ root_id = tree1.get_root_id()
+ tree2.set_root_id(root_id)
+
+ # u'\u03b1' == GREEK SMALL LETTER ALPHA
+ # u'\u03c9' == GREEK SMALL LETTER OMEGA
+ a_id = u'\u03b1-id'.encode('utf8')
+ removed_id = u'\u03c9_removed_id'.encode('utf8')
+ self.build_tree([u'tree1/\u03b1/',
+ u'tree1/\u03b1/\u03c9-removed',
+ u'tree2/\u03b1/',
+ ])
+ tree1.add([u'\u03b1', u'\u03b1/\u03c9-removed'], [a_id, removed_id])
+ tree2.add([u'\u03b1'], [a_id])
+
+ tree1, tree2 = self.mutable_trees_to_test_trees(tree1, tree2)
+ tree1.lock_read()
+ self.addCleanup(tree1.unlock)
+ tree2.lock_read()
+ self.addCleanup(tree2.unlock)
+
+ self.assertEqual([self.deleted(tree1, removed_id)],
+ self.do_iter_changes(tree1, tree2))
+ self.assertEqual([self.deleted(tree1, removed_id)],
+ self.do_iter_changes(tree1, tree2,
+ specific_files=[u'\u03b1']))
+
def test_trees_with_unknowns_and_unicode(self):
tree1 = self.make_branch_and_tree('tree1')
tree2 = self.make_to_branch_and_tree('tree2')
@@ -1071,7 +1135,7 @@
u'tree2/\u03b1/unknown_dir/',
u'tree2/\u03b1/unknown_file',
u'tree2/\u03b1/unknown_dir/file',
- # u'tree2/\u03b1/\u03c9-added',
+ u'tree2/\u03b1/\u03c9-added',
u'tree2/\u03b1/\u03c9-modified',
u'tree2/\u03c9-unknown_root_file',
])
@@ -1082,8 +1146,8 @@
u'\u03b1/\u03c9-removed'],
[a_id, mod_id, rename_id, removed_id])
tree2.add([u'\u03b1', u'\u03b1/\u03c9-modified',
- u'\u03b1/\u03c9-target'], #, u'\u03b1/\u03c9-added'],
- [a_id, mod_id, rename_id])# , added_id])
+ u'\u03b1/\u03c9-target', u'\u03b1/\u03c9-added'],
+ [a_id, mod_id, rename_id , added_id])
tree1, tree2 = self.mutable_trees_to_test_trees(tree1, tree2)
tree1.lock_read()
@@ -1093,7 +1157,7 @@
expected = sorted([
self.unchanged(tree1, root_id),
self.unchanged(tree1, a_id),
- # self.added(tree2, added_id),
+ self.added(tree2, added_id),
self.deleted(tree1, removed_id),
self.renamed(tree1, tree2, rename_id, False),
self.content_changed(tree1, mod_id),
@@ -1113,7 +1177,7 @@
# We should also be able to select just a subset
expected = sorted([
self.unchanged(tree1, a_id),
- # self.added(tree2, added_id),
+ self.added(tree2, added_id),
self.deleted(tree1, removed_id),
self.renamed(tree1, tree2, rename_id, False),
self.content_changed(tree1, mod_id),
=== modified file 'bzrlib/workingtree_4.py'
--- a/bzrlib/workingtree_4.py 2007-03-15 22:35:35 +0000
+++ b/bzrlib/workingtree_4.py 2007-03-15 23:10:20 +0000
@@ -1937,8 +1937,8 @@
return ((entry[0][2], (None, path), True,
(False, True),
(None, parent_id),
- (None, entry[0][1]),
- (None, utf8_decode(path_info[2])[0]),
+ (None, utf8_decode(entry[0][1])[0]),
+ (None, path_info[2]),
(None, target_exec)),)
else:
# but its not on disk: we deliberately treat this as just
More information about the bazaar-commits
mailing list