diff options
Diffstat (limited to 'deluge/tests/test_file_tree.py')
-rw-r--r-- | deluge/tests/test_file_tree.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/deluge/tests/test_file_tree.py b/deluge/tests/test_file_tree.py new file mode 100644 index 000000000..34c018e68 --- /dev/null +++ b/deluge/tests/test_file_tree.py @@ -0,0 +1,46 @@ +from twisted.trial import unittest +from deluge.ui.common import ExtFileTree + +class ExtFileTreeTestCase(unittest.TestCase): + + def test_simple_tree(self): + paths = [ + "SomeRootFolder/file1", + "SomeRootFolder/file2", + "SomeRootFolder/subfolder1/subfile1", + "SomeRootFolder/subfolder1/subfile2" + ] + tree = ExtFileTree(paths) + self.assertEqual(tree.tree, {"children": [ + {"text": "SomeRootFolder", "children": [ + {"text": "file1"}, + {"text": "file2"}, + {"text": "subfolder1", "children": [ + {"text": "subfile1"}, + {"text": "subfile2"} + ]} + ]} + ], "text": ""}) + + def test_tree_walk(self): + paths = [ + "SomeRootFolder/file1", + "SomeRootFolder/file2", + "SomeRootFolder/subfolder1/subfile1", + "SomeRootFolder/subfolder1/subfile2" + ] + tree = ExtFileTree(paths) + for path, obj in tree.walk(): + if path == "SomeRootFolder/file1": + obj["size"] = 1024 + + self.assertEqual(tree.tree, {"children": [ + {"text": "SomeRootFolder", "children": [ + {"text": "file1", "size": 1024}, + {"text": "file2"}, + {"text": "subfolder1", "children": [ + {"text": "subfile1"}, + {"text": "subfile2"} + ]} + ]} + ], "text": ""}) |