1
# Copyright (C) 2007 Canonical Ltd
3
# This program is free software; you can redistribute it and/or modify
4
# it under the terms of the GNU General Public License as published by
5
# the Free Software Foundation; either version 2 of the License, or
6
# (at your option) any later version.
8
# This program is distributed in the hope that it will be useful,
9
# but WITHOUT ANY WARRANTY; without even the implied warranty of
10
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
# GNU General Public License for more details.
13
# You should have received a copy of the GNU General Public License
14
# along with this program; if not, write to the Free Software
15
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17
"""Test that all trees support Tree.list_files()"""
19
from bzrlib.tests.tree_implementations import TestCaseWithTree
22
class TestListFiles(TestCaseWithTree):
24
def test_list_files_with_root(self):
25
work_tree = self.make_branch_and_tree('wt')
26
tree = self.get_tree_no_parents_abc_content(work_tree)
27
expected = [('', 'V', 'directory', 'root-id'),
28
('a', 'V', 'file', 'a-id'),
29
('b', 'V', 'directory', 'b-id'),
30
('b/c', 'V', 'file', 'c-id'),
34
actual = [(path, status, kind, file_id)
35
for path, status, kind, file_id, ie in
36
tree.list_files(include_root=True)]
39
self.assertEqual(expected, actual)
41
def test_list_files_no_root(self):
42
work_tree = self.make_branch_and_tree('wt')
43
tree = self.get_tree_no_parents_abc_content(work_tree)
44
expected = [('a', 'V', 'file', 'a-id'),
45
('b', 'V', 'directory', 'b-id'),
46
('b/c', 'V', 'file', 'c-id'),
50
actual = [(path, status, kind, file_id)
51
for path, status, kind, file_id, ie in
52
tree.list_files(include_root=False)]
55
self.assertEqual(expected, actual)