tests/test-revert-flags.t
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Sat, 15 Apr 2017 02:55:18 +0200
changeset 32009 c6cb21ddf74a
parent 22046 7a9cbb315d84
permissions -rw-r--r--
checkheads: upgrade the obsolescence postprocessing logic (issue4354) The previous logic had many shortcoming (eg: looking at the head only, not handling prune, etc...), the new logic use a more robust approach: For each head, we check if after the push all changesets exclusive to this heads will be obsolete. If they are, the branch considered be "replaced". To check if a changeset will be obsolete, we simply checks: * the changeset phase * the existence of a marker relevant to the "pushed set" that affects the changesets.. This fixes two major issues of the previous algorithm: * branch partially rewritten (eg: head but not root) are no longer detected as replaced, * Prune are now properly handled. (This implementation was introduction in the evolve extension, version 6.0.0.) This new algorithm has an extended number of tests, a basic one is provided in this patch. The others will be introduced in their own changeset for clarity. In addition, we stop trying to process heads unknown locally, we do not have enough data to take an informed decision so we should stop pretending we do. This reflect a test that is now update.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
22046
7a9cbb315d84 tests: replace exit 80 with #require
Matt Mackall <mpm@selenic.com>
parents: 16913
diff changeset
     1
#require execbit
6030
d0dbae32517c revert: revert clean files when only a change of flags is needed
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
     2
12110
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
     3
  $ hg init repo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
     4
  $ cd repo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
     5
  $ echo foo > foo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
     6
  $ chmod 644 foo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
     7
  $ hg ci -qAm '644'
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
     8
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
     9
  $ chmod 755 foo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    10
  $ hg ci -qAm '755'
6030
d0dbae32517c revert: revert clean files when only a change of flags is needed
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    11
12110
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    12
reverting to rev 0
6030
d0dbae32517c revert: revert clean files when only a change of flags is needed
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
    13
12110
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    14
  $ hg revert -a -r 0
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    15
  reverting foo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    16
  $ hg st
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    17
  M foo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    18
  $ hg diff --git
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    19
  diff --git a/foo b/foo
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    20
  old mode 100755
58a8105242a5 tests: unify test-revert-flags
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 6030
diff changeset
    21
  new mode 100644
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12110
diff changeset
    22
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12110
diff changeset
    23
  $ cd ..