482
482
next_parent = 'base'
483
483
text_name = 'chain1-'
484
484
text = ['line\n']
485
sha1s = {0 :'da6d3141cb4a5e6f464bf6e0518042ddc7bfd079',
486
1 :'45e21ea146a81ea44a821737acdb4f9791c8abe7',
487
2 :'e1f11570edf3e2a070052366c582837a4fe4e9fa',
488
3 :'26b4b8626da827088c514b8f9bbe4ebf181edda1',
489
4 :'e28a5510be25ba84d31121cff00956f9970ae6f6',
490
5 :'d63ec0ce22e11dcf65a931b69255d3ac747a318d',
491
6 :'2c2888d288cb5e1d98009d822fedfe6019c6a4ea',
492
7 :'95c14da9cafbf828e3e74a6f016d87926ba234ab',
493
8 :'779e9a0b28f9f832528d4b21e17e168c67697272',
494
9 :'1f8ff4e5c6ff78ac106fcfe6b1e8cb8740ff9a8f',
495
10:'131a2ae712cf51ed62f143e3fbac3d4206c25a05',
496
11:'c5a9d6f520d2515e1ec401a8f8a67e6c3c89f199',
497
12:'31a2286267f24d8bedaa43355f8ad7129509ea85',
498
13:'dc2a7fe80e8ec5cae920973973a8ee28b2da5e0a',
499
14:'2c4b1736566b8ca6051e668de68650686a3922f2',
500
15:'5912e4ecd9b0c07be4d013e7e2bdcf9323276cde',
501
16:'b0d2e18d3559a00580f6b49804c23fea500feab3',
502
17:'8e1d43ad72f7562d7cb8f57ee584e20eb1a69fc7',
503
18:'5cf64a3459ae28efa60239e44b20312d25b253f3',
504
19:'1ebed371807ba5935958ad0884595126e8c4e823',
505
20:'2aa62a8b06fb3b3b892a3292a068ade69d5ee0d3',
506
21:'01edc447978004f6e4e962b417a4ae1955b6fe5d',
507
22:'d8d8dc49c4bf0bab401e0298bb5ad827768618bb',
508
23:'c21f62b1c482862983a8ffb2b0c64b3451876e3f',
509
24:'c0593fe795e00dff6b3c0fe857a074364d5f04fc',
510
25:'dd1a1cf2ba9cc225c3aff729953e6364bf1d1855',
485
sha1s = {0: 'da6d3141cb4a5e6f464bf6e0518042ddc7bfd079',
486
1: '45e21ea146a81ea44a821737acdb4f9791c8abe7',
487
2: 'e1f11570edf3e2a070052366c582837a4fe4e9fa',
488
3: '26b4b8626da827088c514b8f9bbe4ebf181edda1',
489
4: 'e28a5510be25ba84d31121cff00956f9970ae6f6',
490
5: 'd63ec0ce22e11dcf65a931b69255d3ac747a318d',
491
6: '2c2888d288cb5e1d98009d822fedfe6019c6a4ea',
492
7: '95c14da9cafbf828e3e74a6f016d87926ba234ab',
493
8: '779e9a0b28f9f832528d4b21e17e168c67697272',
494
9: '1f8ff4e5c6ff78ac106fcfe6b1e8cb8740ff9a8f',
495
10: '131a2ae712cf51ed62f143e3fbac3d4206c25a05',
496
11: 'c5a9d6f520d2515e1ec401a8f8a67e6c3c89f199',
497
12: '31a2286267f24d8bedaa43355f8ad7129509ea85',
498
13: 'dc2a7fe80e8ec5cae920973973a8ee28b2da5e0a',
499
14: '2c4b1736566b8ca6051e668de68650686a3922f2',
500
15: '5912e4ecd9b0c07be4d013e7e2bdcf9323276cde',
501
16: 'b0d2e18d3559a00580f6b49804c23fea500feab3',
502
17: '8e1d43ad72f7562d7cb8f57ee584e20eb1a69fc7',
503
18: '5cf64a3459ae28efa60239e44b20312d25b253f3',
504
19: '1ebed371807ba5935958ad0884595126e8c4e823',
505
20: '2aa62a8b06fb3b3b892a3292a068ade69d5ee0d3',
506
21: '01edc447978004f6e4e962b417a4ae1955b6fe5d',
507
22: 'd8d8dc49c4bf0bab401e0298bb5ad827768618bb',
508
23: 'c21f62b1c482862983a8ffb2b0c64b3451876e3f',
509
24: 'c0593fe795e00dff6b3c0fe857a074364d5f04fc',
510
25: 'dd1a1cf2ba9cc225c3aff729953e6364bf1d1855',
512
512
for depth in range(26):
513
513
new_version = text_name + '%s' % depth
880
880
self.plan_merge_vf.get_parent_map([('root', 'B')]))
881
881
self.assertEqual({('root', 'D'):(('root', 'C'),)},
882
882
self.plan_merge_vf.get_parent_map([('root', 'D')]))
883
self.assertEqual({('root', 'E:'):(('root', 'B'),('root', 'D'))},
883
self.assertEqual({('root', 'E:'):(('root', 'B'), ('root', 'D'))},
884
884
self.plan_merge_vf.get_parent_map([('root', 'E:')]))
885
885
self.assertEqual({},
886
886
self.plan_merge_vf.get_parent_map([('root', 'F')]))
887
887
self.assertEqual({
888
('root', 'B'):(('root', 'A'),),
889
('root', 'D'):(('root', 'C'),),
890
('root', 'E:'):(('root', 'B'),('root', 'D')),
888
('root', 'B'): (('root', 'A'),),
889
('root', 'D'): (('root', 'C'),),
890
('root', 'E:'): (('root', 'B'), ('root', 'D')),
892
892
self.plan_merge_vf.get_parent_map(
893
893
[('root', 'B'), ('root', 'D'), ('root', 'E:'), ('root', 'F')]))
1396
1396
# plain text knits in packs (texts)
1397
1397
len_one_scenarios = [
1398
1398
('weave-named', {
1400
'factory':make_versioned_files_factory(WeaveFile,
1400
'factory': make_versioned_files_factory(WeaveFile,
1401
1401
ConstantMapper('inventory')),
1404
1404
'support_partial_insertion': False,
1406
1406
('named-knit', {
1408
'factory':make_file_factory(False, ConstantMapper('revisions')),
1408
'factory': make_file_factory(False, ConstantMapper('revisions')),
1411
1411
'support_partial_insertion': False,
1413
1413
('named-nograph-nodelta-knit-pack', {
1414
'cleanup':cleanup_pack_knit,
1415
'factory':make_pack_factory(False, False, 1),
1414
'cleanup': cleanup_pack_knit,
1415
'factory': make_pack_factory(False, False, 1),
1418
1418
'support_partial_insertion': False,
1420
1420
('named-graph-knit-pack', {
1421
'cleanup':cleanup_pack_knit,
1422
'factory':make_pack_factory(True, True, 1),
1421
'cleanup': cleanup_pack_knit,
1422
'factory': make_pack_factory(True, True, 1),
1425
1425
'support_partial_insertion': True,
1427
1427
('named-graph-nodelta-knit-pack', {
1428
'cleanup':cleanup_pack_knit,
1429
'factory':make_pack_factory(True, False, 1),
1428
'cleanup': cleanup_pack_knit,
1429
'factory': make_pack_factory(True, False, 1),
1432
1432
'support_partial_insertion': False,
1434
1434
('groupcompress-nograph', {
1435
'cleanup':groupcompress.cleanup_pack_group,
1436
'factory':groupcompress.make_pack_factory(False, False, 1),
1435
'cleanup': groupcompress.cleanup_pack_group,
1436
'factory': groupcompress.make_pack_factory(False, False, 1),
1437
1437
'graph': False,
1439
'support_partial_insertion':False,
1439
'support_partial_insertion': False,
1442
1442
len_two_scenarios = [
1443
1443
('weave-prefix', {
1445
'factory':make_versioned_files_factory(WeaveFile,
1445
'factory': make_versioned_files_factory(WeaveFile,
1446
1446
PrefixMapper()),
1449
1449
'support_partial_insertion': False,
1451
1451
('annotated-knit-escape', {
1453
'factory':make_file_factory(True, HashEscapedPrefixMapper()),
1453
'factory': make_file_factory(True, HashEscapedPrefixMapper()),
1456
1456
'support_partial_insertion': False,
1458
1458
('plain-knit-pack', {
1459
'cleanup':cleanup_pack_knit,
1460
'factory':make_pack_factory(True, True, 2),
1459
'cleanup': cleanup_pack_knit,
1460
'factory': make_pack_factory(True, True, 2),
1463
1463
'support_partial_insertion': True,
1465
1465
('groupcompress', {
1466
'cleanup':groupcompress.cleanup_pack_group,
1467
'factory':groupcompress.make_pack_factory(True, False, 1),
1466
'cleanup': groupcompress.cleanup_pack_group,
1467
'factory': groupcompress.make_pack_factory(True, False, 1),
1470
'support_partial_insertion':False,
1470
'support_partial_insertion': False,
1860
1860
('FileB', 'base'),
1863
('FileA', 'merged'):2, ('FileA', 'left'):1, ('FileA', 'right'):1,
1864
('FileA', 'base'):0,
1865
('FileB', 'merged'):2, ('FileB', 'left'):1, ('FileB', 'right'):1,
1866
('FileB', 'base'):0,
1863
('FileA', 'merged'): 2, ('FileA', 'left'): 1, ('FileA', 'right'): 1,
1864
('FileA', 'base'): 0,
1865
('FileB', 'merged'): 2, ('FileB', 'left'): 1, ('FileB', 'right'): 1,
1866
('FileB', 'base'): 0,
1868
1868
return keys, sort_order
1880
1880
('FileB', 'base'),
1883
('FileA', 'merged'):0, ('FileA', 'left'):1, ('FileA', 'right'):1,
1884
('FileA', 'base'):2,
1885
('FileB', 'merged'):3, ('FileB', 'left'):4, ('FileB', 'right'):4,
1886
('FileB', 'base'):5,
1883
('FileA', 'merged'): 0, ('FileA', 'left'): 1, ('FileA', 'right'): 1,
1884
('FileA', 'base'): 2,
1885
('FileB', 'merged'): 3, ('FileB', 'left'): 4, ('FileB', 'right'): 4,
1886
('FileB', 'base'): 5,
1888
1888
return keys, sort_order
2259
2259
(('r1',), self.get_parents((('r0',),))),
2260
2260
(('r2',), self.get_parents(())),
2261
2261
(('r3',), self.get_parents(())),
2262
(('m',), self.get_parents((('r0',),('r1',),('r2',),('r3',)))),
2262
(('m',), self.get_parents((('r0',), ('r1',), ('r2',), ('r3',)))),
2265
2265
parent_details = [
2676
2676
next_parent = self.get_simple_key('base')
2677
2677
text_name = 'chain1-'
2678
2678
text = ['line\n']
2679
sha1s = {0 :'da6d3141cb4a5e6f464bf6e0518042ddc7bfd079',
2680
1 :'45e21ea146a81ea44a821737acdb4f9791c8abe7',
2681
2 :'e1f11570edf3e2a070052366c582837a4fe4e9fa',
2682
3 :'26b4b8626da827088c514b8f9bbe4ebf181edda1',
2683
4 :'e28a5510be25ba84d31121cff00956f9970ae6f6',
2684
5 :'d63ec0ce22e11dcf65a931b69255d3ac747a318d',
2685
6 :'2c2888d288cb5e1d98009d822fedfe6019c6a4ea',
2686
7 :'95c14da9cafbf828e3e74a6f016d87926ba234ab',
2687
8 :'779e9a0b28f9f832528d4b21e17e168c67697272',
2688
9 :'1f8ff4e5c6ff78ac106fcfe6b1e8cb8740ff9a8f',
2689
10:'131a2ae712cf51ed62f143e3fbac3d4206c25a05',
2690
11:'c5a9d6f520d2515e1ec401a8f8a67e6c3c89f199',
2691
12:'31a2286267f24d8bedaa43355f8ad7129509ea85',
2692
13:'dc2a7fe80e8ec5cae920973973a8ee28b2da5e0a',
2693
14:'2c4b1736566b8ca6051e668de68650686a3922f2',
2694
15:'5912e4ecd9b0c07be4d013e7e2bdcf9323276cde',
2695
16:'b0d2e18d3559a00580f6b49804c23fea500feab3',
2696
17:'8e1d43ad72f7562d7cb8f57ee584e20eb1a69fc7',
2697
18:'5cf64a3459ae28efa60239e44b20312d25b253f3',
2698
19:'1ebed371807ba5935958ad0884595126e8c4e823',
2699
20:'2aa62a8b06fb3b3b892a3292a068ade69d5ee0d3',
2700
21:'01edc447978004f6e4e962b417a4ae1955b6fe5d',
2701
22:'d8d8dc49c4bf0bab401e0298bb5ad827768618bb',
2702
23:'c21f62b1c482862983a8ffb2b0c64b3451876e3f',
2703
24:'c0593fe795e00dff6b3c0fe857a074364d5f04fc',
2704
25:'dd1a1cf2ba9cc225c3aff729953e6364bf1d1855',
2679
sha1s = {0: 'da6d3141cb4a5e6f464bf6e0518042ddc7bfd079',
2680
1: '45e21ea146a81ea44a821737acdb4f9791c8abe7',
2681
2: 'e1f11570edf3e2a070052366c582837a4fe4e9fa',
2682
3: '26b4b8626da827088c514b8f9bbe4ebf181edda1',
2683
4: 'e28a5510be25ba84d31121cff00956f9970ae6f6',
2684
5: 'd63ec0ce22e11dcf65a931b69255d3ac747a318d',
2685
6: '2c2888d288cb5e1d98009d822fedfe6019c6a4ea',
2686
7: '95c14da9cafbf828e3e74a6f016d87926ba234ab',
2687
8: '779e9a0b28f9f832528d4b21e17e168c67697272',
2688
9: '1f8ff4e5c6ff78ac106fcfe6b1e8cb8740ff9a8f',
2689
10: '131a2ae712cf51ed62f143e3fbac3d4206c25a05',
2690
11: 'c5a9d6f520d2515e1ec401a8f8a67e6c3c89f199',
2691
12: '31a2286267f24d8bedaa43355f8ad7129509ea85',
2692
13: 'dc2a7fe80e8ec5cae920973973a8ee28b2da5e0a',
2693
14: '2c4b1736566b8ca6051e668de68650686a3922f2',
2694
15: '5912e4ecd9b0c07be4d013e7e2bdcf9323276cde',
2695
16: 'b0d2e18d3559a00580f6b49804c23fea500feab3',
2696
17: '8e1d43ad72f7562d7cb8f57ee584e20eb1a69fc7',
2697
18: '5cf64a3459ae28efa60239e44b20312d25b253f3',
2698
19: '1ebed371807ba5935958ad0884595126e8c4e823',
2699
20: '2aa62a8b06fb3b3b892a3292a068ade69d5ee0d3',
2700
21: '01edc447978004f6e4e962b417a4ae1955b6fe5d',
2701
22: 'd8d8dc49c4bf0bab401e0298bb5ad827768618bb',
2702
23: 'c21f62b1c482862983a8ffb2b0c64b3451876e3f',
2703
24: 'c0593fe795e00dff6b3c0fe857a074364d5f04fc',
2704
25: 'dd1a1cf2ba9cc225c3aff729953e6364bf1d1855',
2706
2706
for depth in range(26):
2707
2707
new_version = self.get_simple_key(text_name + '%s' % depth)