1436
1437
inv = self.make_simple_inventory()
1437
1438
self.assertExpand(['TREE_ROOT', 'dir1-id', 'sub-dir1-id', 'top-id',
1438
1439
'subsub-file1-id'], inv, ['top-id', 'subsub-file1-id'])
1442
class TestMutableInventoryFromTree(TestCaseWithTransport):
1444
def test_empty(self):
1445
repository = self.make_repository('.')
1446
tree = repository.revision_tree(revision.NULL_REVISION)
1447
inv = mutable_inventory_from_tree(tree)
1448
self.assertEquals(revision.NULL_REVISION, inv.revision_id)
1449
self.assertEquals(0, len(inv))
1451
def test_some_files(self):
1452
wt = self.make_branch_and_tree('.')
1453
self.build_tree(['a'])
1454
wt.add(['a'], ['thefileid'])
1455
revid = wt.commit("commit")
1456
tree = wt.branch.repository.revision_tree(revid)
1457
inv = mutable_inventory_from_tree(tree)
1458
self.assertEquals(revid, inv.revision_id)
1459
self.assertEquals(2, len(inv))
1460
self.assertEquals("a", inv['thefileid'].name)
1461
# The inventory should be mutable and independent of
1463
self.assertFalse(tree.inventory['thefileid'].executable)
1464
inv['thefileid'].executable = True
1465
self.assertFalse(tree.inventory['thefileid'].executable)