# HG changeset patch # User Martin von Zweigbergk # Date 1554309488 25200 # Node ID b9e5f3853a97acce2a0e24d135a92e544247c7cc # Parent 399ed3e86a498a3ec7a62cbbec8e31e82803215e tests: better document the graft copy case Differential Revision: https://phab.mercurial-scm.org/D6190 diff -r 399ed3e86a49 -r b9e5f3853a97 tests/test-graft.t --- a/tests/test-graft.t Wed Apr 03 11:46:29 2019 -0400 +++ b/tests/test-graft.t Wed Apr 03 09:38:08 2019 -0700 @@ -927,7 +927,20 @@ NOTE: This is affected by issue5343, and will need updating when it's fixed -Possible cases during a regular graft (when ca is between cta and c2): +Consider this topology for a regular graft: + +o c1 +| +| o c2 +| | +| o ca # stands for "common ancestor" +|/ +o cta # stands for "common topological ancestor" + +Note that in issue5343, ca==cta. + +The following table shows the possible cases. Here, "x->y" and, equivalently, +"y<-x", where x is an ancestor of y, means that some copy happened from x to y. name | c1<-cta | cta<->ca | ca->c2 A.0 | | | @@ -955,6 +968,8 @@ A.4 has a degenerate case a<-b<-a->a, where checkcopies isn't needed at all. A.5 has a special case a<-b<-b->a, which is treated like a<-b->a in a merge. +A.5 has issue5343 as a special case. +TODO: add test coverage for A.5 A.6 has a special case a<-a<-b->a. Here, checkcopies will find a spurious incomplete divergence, which is in fact complete. This is handled later in mergecopies.