67
69
test_file_append.close()
68
70
self.tree.add(self.tree.relpath(os.path.join(os.getcwd(),
69
71
'test_file_append')))
70
self.tree.commit(message="add test files")
72
self.tree.commit(message = "add test files")
72
74
ControlDir.open(".").sprout("../temp-clone")
73
75
clone_bzrdir = ControlDir.open("../temp-clone")
79
81
test_file_append = open("../temp-clone/test_file_append", "a")
80
82
test_file_append.write(content + "\n")
81
83
test_file_append.close()
82
clone_tree.commit(message="make branch test change")
84
clone_tree.commit(message = "make branch test change")
83
85
saved_subtree_revid = clone_tree.branch.last_revision()
85
87
self.tree.merge_from_branch(clone_tree.branch)
89
91
test_file_append = open("test_file_append", "a")
90
92
test_file_append.write("two\n")
91
93
test_file_append.close()
92
self.tree.commit(message="merge external branch")
94
self.tree.commit(message = "merge external branch")
93
95
shutil.rmtree("../temp-clone")
95
97
self.subtree_rev = saved_subtree_revid
102
104
test_file_append = open("test_file_append", "a")
103
105
test_file_append.write(content + "\n")
104
106
test_file_append.close()
105
self.tree.commit(message="make test change")
107
self.tree.commit(message = "make test change")
108
110
class BisectHarnessTests(BisectTestCase):
117
119
test_content = top_file.read().strip()
119
121
top_revtree.unlock()
120
self.assertEqual(test_content, b"five")
122
self.assertEqual(test_content, "five")
122
124
def testSubtreeRev(self):
123
125
"""Test that the last revision in a subtree is correct."""
124
126
repo = self.tree.branch.repository
125
127
sub_revtree = repo.revision_tree(self.subtree_rev)
126
128
sub_revtree.lock_read()
127
with sub_revtree.get_file("test_file") as sub_file:
128
test_content = sub_file.read().strip()
129
sub_file = sub_revtree.get_file("test_file")
130
test_content = sub_file.read().strip()
129
132
sub_revtree.unlock()
130
self.assertEqual(test_content, b"one dot three")
133
self.assertEqual(test_content, "one dot three")
133
136
class BisectCurrentUnitTests(BisectTestCase):
185
188
def testLoad(self):
186
189
"""Test loading a log."""
187
preloaded_log = open(os.path.join(
188
'.bzr', bisect.BISECT_INFO_PATH), "w")
190
preloaded_log = open(os.path.join('.bzr', bisect.BISECT_INFO_PATH), "w")
189
191
preloaded_log.write("rev1 yes\nrev2 no\nrev3 yes\n")
190
192
preloaded_log.close()
192
194
bisect_log = bisect.BisectLog(self.tree.controldir)
193
195
self.assertEqual(len(bisect_log._items), 3)
194
self.assertEqual(bisect_log._items[0], (b"rev1", "yes"))
195
self.assertEqual(bisect_log._items[1], (b"rev2", "no"))
196
self.assertEqual(bisect_log._items[2], (b"rev3", "yes"))
196
self.assertEqual(bisect_log._items[0], ("rev1", "yes"))
197
self.assertEqual(bisect_log._items[1], ("rev2", "no"))
198
self.assertEqual(bisect_log._items[2], ("rev3", "yes"))
198
200
def testSave(self):
199
201
"""Test saving the log."""
200
202
bisect_log = bisect.BisectLog(self.tree.controldir)
201
bisect_log._items = [
202
(b"rev1", "yes"), (b"rev2", "no"), (b"rev3", "yes")]
203
bisect_log._items = [("rev1", "yes"), ("rev2", "no"), ("rev3", "yes")]
203
204
bisect_log.save()
205
with open(os.path.join('.bzr', bisect.BISECT_INFO_PATH), 'rb') as logfile:
206
self.assertEqual(logfile.read(), b"rev1 yes\nrev2 no\nrev3 yes\n")
206
with open(os.path.join('.bzr', bisect.BISECT_INFO_PATH)) as logfile:
207
self.assertEqual(logfile.read(), "rev1 yes\nrev2 no\nrev3 yes\n")