# HG changeset patch # User Sushil khanchi # Date 1545734285 -19800 # Node ID ff483949674e57d376d46d5f789253b6f5d1c450 # Parent f45b4c31d81f63f3641b56d0f62e45c2ec347149 evolve: add test case for issue 5881 diff -r f45b4c31d81f -r ff483949674e tests/test-evolve-issue5881.t --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-evolve-issue5881.t Tue Dec 25 16:08:05 2018 +0530 @@ -0,0 +1,52 @@ +Test for issue 5881 present at https://bz.mercurial-scm.org/show_bug.cgi?id=5881 +=============================================================================== +which is about that if the working copy parent is obsolete then evolve update +to its successor revision and stop; it doesn't continue to evolve remaining +revisions those were suppossed to evovle. + +Setup +===== + + $ cat >> $HGRCPATH < [phases] + > publish = False + > [alias] + > glog = log -GT "{rev}:{node|short} {desc}\n ({bookmarks}) {phase}" + > [extensions] + > EOF + $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH + + $ hg init issue5881 + $ cd issue5881 + +Prepare the directory by creating an orphan and update to its obsolete parent: + + $ for ch in a b c; do echo $ch > $ch; hg ci -Am "added "$ch; done; + adding a + adding b + adding c + $ hg up 1 -q + $ hg ci --amend -m "updated b" + 1 new orphan changesets + $ hg up 1 + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + working directory parent is obsolete! (5f6d8a4bf34a) + (use 'hg evolve' to update to its successor: e6048a693c0d) + + $ hg glog + o 3:e6048a693c0d updated b + | () draft + | * 2:155349b645be added c + | | () draft + | @ 1:5f6d8a4bf34a added b + |/ () draft + o 0:9092f1db7931 added a + () draft + +Test `hg evolve` evolve all the revisions specified by user: +(XXX:it stops after updating to its successor and don't evolve next revision, +it will fixed in next patch) + $ hg evolve -r .:: + update:[3] updated b + 0 files updated, 0 files merged, 0 files removed, 0 files unresolved + working directory is now at e6048a693c0d