23
23
class TestSerializeTransform(TestCaseWithTransport):
25
def test_roundtrip(self):
25
def test_roundtrip_creation(self):
26
26
tree = self.make_branch_and_tree('.')
27
27
tt = transform.TransformPreview(tree)
28
28
self.addCleanup(tt.finalize)
30
30
tt.new_directory('qux', tt.root, 'quxx')
31
31
output = serialize(tt)
32
32
tt2 = transform.TransformPreview(tree)
33
self.addCleanup(tt2.finalize)
33
34
deserialize(tt2, output)
34
35
self.assertEqual(3, tt2._id_number)
35
36
self.assertEqual({'new-1': u'foo\u1234',
48
49
self.assertEqual('bar', foo_content)
51
def test_roundtrip_destruction(self):
52
tree = self.make_branch_and_tree('.')
53
self.build_tree([u'foo\u1234', 'bar'])
54
tree.add([u'foo\u1234', 'bar'], ['foo-id', 'bar-id'])
55
tt = transform.TransformPreview(tree)
56
self.addCleanup(tt.finalize)
57
foo_trans_id = tt.trans_id_tree_file_id('foo-id')
58
tt.unversion_file(foo_trans_id)
59
bar_trans_id = tt.trans_id_tree_file_id('bar-id')
60
tt.delete_contents(bar_trans_id)
61
tt2 = transform.TransformPreview(tree)
62
self.addCleanup(tt2.finalize)
63
deserialize(tt2, serialize(tt))
64
self.assertEqual({u'foo\u1234': foo_trans_id,
66
'': tt.root}, tt2._tree_path_ids)
67
self.assertEqual({foo_trans_id: u'foo\u1234',
69
tt.root: ''}, tt2._tree_id_paths)
70
self.assertEqual(set([foo_trans_id]), tt2._removed_id)
71
self.assertEqual(set([bar_trans_id]), tt2._removed_contents)