202
203
self.assertEqual(['', 'dir', 'dir/subdir', 'dir/subdir/foo'],
203
204
[path for path, ie in tree.iter_entries_by_dir()])
206
def test_add_dir_bug_251864(self):
207
"""Added file turning into a dir should be detected on add dir
209
Similar to bug 205636 but with automatic adding of directory contents.
211
tree = self.make_branch_and_tree(".")
212
self.build_tree(["dir"]) # whoops, make a file called dir
213
tree.smart_add(["dir"])
215
self.build_tree(["dir/", "dir/file"])
216
tree.smart_add(["dir"])
217
tree.commit("Add dir contents")
218
self.addCleanup(tree.lock_read().unlock)
219
self.assertEqual([(u"dir", "directory"), (u"dir/file", "file")],
220
[(t[0], t[2]) for t in tree.list_files()])
221
self.assertFalse(list(tree.iter_changes(tree.basis_tree())))
223
def test_add_subdir_file_bug_205636(self):
224
"""Added file turning into a dir should be detected on add dir/file"""
225
tree = self.make_branch_and_tree(".")
226
self.build_tree(["dir"]) # whoops, make a file called dir
227
tree.smart_add(["dir"])
229
self.build_tree(["dir/", "dir/file"])
230
tree.smart_add(["dir/file"])
231
tree.commit("Add file in dir")
232
self.addCleanup(tree.lock_read().unlock)
233
self.assertEqual([(u"dir", "directory"), (u"dir/file", "file")],
234
[(t[0], t[2]) for t in tree.list_files()])
235
self.assertFalse(list(tree.iter_changes(tree.basis_tree())))
205
237
def test_custom_ids(self):
207
239
action = test_smart_add.AddCustomIDAction(to_file=sio,