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