comparison tests/test-copies-chain-merge.t @ 46543:f01696d45d1e

test-copies: add subcase titles for various "conflicting" information variant This make the transitions between case clearer. Differential Revision: https://phab.mercurial-scm.org/D10047
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Thu, 18 Feb 2021 13:49:55 +0100
parents f8888f5c8c50
children fbc466484fc3
comparison
equal deleted inserted replaced
46542:f8888f5c8c50 46543:f01696d45d1e
310 310
311 311
312 Comparing with a merge with colliding rename 312 Comparing with a merge with colliding rename
313 -------------------------------------------- 313 --------------------------------------------
314 314
315 Subcase: new copy information on both side
316 ``````````````````````````````````````````
317
315 - the "e-" branch renaming b to f (through 'g') 318 - the "e-" branch renaming b to f (through 'g')
316 - the "a-" branch renaming d to f (through e) 319 - the "a-" branch renaming d to f (through e)
317 320
318 $ case_desc="merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f)" 321 $ case_desc="merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f)"
319 322
351 o 1 i-1: a -move-> c 354 o 1 i-1: a -move-> c
352 | 355 |
353 o 0 i-0 initial commit: a b h 356 o 0 i-0 initial commit: a b h
354 357
355 358
359 Subcase: existing copy information overwritten on one branch
360 ````````````````````````````````````````````````````````````
356 361
357 Merge: 362 Merge:
358 - one with change to an unrelated file (b) 363 - one with change to an unrelated file (b)
359 - one overwriting a file (d) with a rename (from h to i to d) 364 - one overwriting a file (d) with a rename (from h to i to d)
360 365
405 | 410 |
406 o 0 i-0 initial commit: a b h 411 o 0 i-0 initial commit: a b h
407 412
408 413
409 414
415 Subcase: reset of the copy history on one side
416 ``````````````````````````````````````````````
417
410 Merge: 418 Merge:
411 - one with change to a file 419 - one with change to a file
412 - one deleting and recreating the file 420 - one deleting and recreating the file
413 421
414 Unlike in the 'BD/DB' cases, an actual merge happened here. So we should 422 Unlike in the 'BD/DB' cases, an actual merge happened here. So we should
453 o 1 i-1: a -move-> c 461 o 1 i-1: a -move-> c
454 | 462 |
455 o 0 i-0 initial commit: a b h 463 o 0 i-0 initial commit: a b h
456 464
457 465
466 Subcase: merging a change to a file with a "copy overwrite" to that file from another branch
467 ````````````````````````````````````````````````````````````````````````````````````````````
458 468
459 Merge: 469 Merge:
460 - one with change to a file (d) 470 - one with change to a file (d)
461 - one overwriting that file with a rename (from h to i, to d) 471 - one overwriting that file with a rename (from h to i, to d)
462 472
1188 1198
1189 1199
1190 Comparing with a merge with colliding rename 1200 Comparing with a merge with colliding rename
1191 -------------------------------------------- 1201 --------------------------------------------
1192 1202
1203 Subcase: new copy information on both side
1204 ``````````````````````````````````````````
1205
1193 - the "e-" branch renaming b to f (through 'g') 1206 - the "e-" branch renaming b to f (through 'g')
1194 - the "a-" branch renaming d to f (through e) 1207 - the "a-" branch renaming d to f (through e)
1195 1208
1196 $ hg log -G --rev '::(desc("mAEm")+desc("mEAm"))' 1209 $ hg log -G --rev '::(desc("mAEm")+desc("mEAm"))'
1197 o 20 mEAm-0 merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f) - the other way 1210 o 20 mEAm-0 merge with copies info on both side - A side: rename d to f, E side: b to f, (same content for f) - the other way
1302 b (no-filelog !) 1315 b (no-filelog !)
1303 R a 1316 R a
1304 R b 1317 R b
1305 1318
1306 1319
1320 Subcase: existing copy information overwritten on one branch
1321 ````````````````````````````````````````````````````````````
1322
1307 Note: 1323 Note:
1308 | In this case, one of the merge wrongly record a merge while there is none. 1324 | In this case, one of the merge wrongly record a merge while there is none.
1309 | This lead to bad copy tracing information to be dug up. 1325 | This lead to bad copy tracing information to be dug up.
1310 1326
1311 1327
1395 o 2 i-2: c -move-> d 1411 o 2 i-2: c -move-> d
1396 | 1412 |
1397 ~ 1413 ~
1398 #endif 1414 #endif
1399 1415
1416 Subcase: reset of the copy history on one side
1417 ``````````````````````````````````````````````
1400 1418
1401 Merge: 1419 Merge:
1402 - one with change to a file 1420 - one with change to a file
1403 - one deleting and recreating the file 1421 - one deleting and recreating the file
1404 1422
1500 o 2 i-2: c -move-> d 1518 o 2 i-2: c -move-> d
1501 | 1519 |
1502 ~ 1520 ~
1503 #endif 1521 #endif
1504 1522
1523 Subcase: merging a change to a file with a "copy overwrite" to that file from another branch
1524 ````````````````````````````````````````````````````````````````````````````````````````````
1505 1525
1506 Merge: 1526 Merge:
1507 - one with change to a file (d) 1527 - one with change to a file (d)
1508 - one overwriting that file with a rename (from h to i, to d) 1528 - one overwriting that file with a rename (from h to i, to d)
1509 1529