annotate tests/test-mq-qimport-fail-cleanup.t @ 25591:f1d46075b13a

verify: check the subrepository references in .hgsubstate While hopefully atypical, there are reasons that a subrepository revision can be lost that aren't covered by corruption of the .hgsubstate revlog. Such things can happen when a subrepo is amended, stripped or simply isn't pulled from upstream because the parent repo revision wasn't updated yet. There's no way to know if it is an error, but this will find potential problems sooner than when some random revision is updated. Until recently, convert made no attempt at rewriting the .hgsubstate file. The impetuous for this is to verify the conversion of some repositories, and this is orders of magnitude faster than a bash script from 0..tip that does an 'hg update -C $rev'. But it is equally useful to determine if everything has been pulled down before taking a thumb drive on the go. It feels somewhat wrong to leave this out of verifymod (mostly because the file is already read in there, and the final summary is printed before the subrepos are checked). But verifymod looks very low level, so importing subrepo stuff there seems more wrong.
author Matt Harbison <matt_harbison@yahoo.com>
date Tue, 16 Jun 2015 16:15:15 -0400
parents f2719b387380
children 0342bf292f73
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12465
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
1 Failed qimport of patches from files should cleanup by recording successfully
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
2 imported patches in series file.
11462
1b82a26635d7 mq: qimport cleanup on fail (issue2214)
Vishakh H <vsh426@gmail.com>
parents:
diff changeset
3
12465
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
4 $ echo "[extensions]" >> $HGRCPATH
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
5 $ echo "mq=" >> $HGRCPATH
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
6 $ hg init repo
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
7 $ cd repo
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
8 $ echo a > a
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
9 $ hg ci -Am'add a'
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
10 adding a
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
11 $ cat >b.patch<<EOF
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
12 > diff --git a/a b/a
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
13 > --- a/a
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
14 > +++ b/a
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
15 > @@ -1,1 +1,2 @@
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
16 > a
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
17 > +b
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
18 > EOF
11462
1b82a26635d7 mq: qimport cleanup on fail (issue2214)
Vishakh H <vsh426@gmail.com>
parents:
diff changeset
19
12465
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
20 empty series
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
21
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
22 $ hg qseries
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
23
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
24 qimport valid patch followed by invalid patch
11462
1b82a26635d7 mq: qimport cleanup on fail (issue2214)
Vishakh H <vsh426@gmail.com>
parents:
diff changeset
25
12465
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
26 $ hg qimport b.patch fakepatch
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
27 adding b.patch to series file
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
28 abort: unable to read file fakepatch
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
29 [255]
11462
1b82a26635d7 mq: qimport cleanup on fail (issue2214)
Vishakh H <vsh426@gmail.com>
parents:
diff changeset
30
12465
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
31 valid patches before fail added to series
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
32
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
33 $ hg qseries
8b12768b15e2 tests: unify test-mq-qimport-fail-cleanup
Matt Mackall <mpm@selenic.com>
parents: 11462
diff changeset
34 b.patch
15704
8857e150bec0 phases: prevent mq to qimport immutable change.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15243
diff changeset
35
8857e150bec0 phases: prevent mq to qimport immutable change.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15243
diff changeset
36 $ hg pull -q -r 0 . # update phase
8857e150bec0 phases: prevent mq to qimport immutable change.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15243
diff changeset
37 $ hg qimport -r 0
8857e150bec0 phases: prevent mq to qimport immutable change.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15243
diff changeset
38 abort: revision 0 is not mutable
8857e150bec0 phases: prevent mq to qimport immutable change.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15243
diff changeset
39 (see "hg help phases" for details)
8857e150bec0 phases: prevent mq to qimport immutable change.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 15243
diff changeset
40 [255]
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16107
diff changeset
41
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16107
diff changeset
42 $ cd ..