Mercurial > hg
annotate tests/test-mq-qimport-fail-cleanup.t @ 18510:f254ab6207ae stable
subrepo: use sharepath if available when locating the source repo
This is an alternative fix for issue3518, enabling sharing of repositories with
subrepos, without unconditionally setting the default path in the resulting
repo's hgrc file. Better test coverage is added here, but won't prove this code
is working until fd903f89e42b is backed out.
The problem with the original fix is, if a default path is not available to be
copied over from the share source, the default path on the resulting repo is set
to the source location. Since that's where the actual repository is stored, the
path is essentially self-referential, so push, pull, incoming and outgoing
effectively operate on itself. While incoming and outgoing make it look like
nothing was changed, push currently hangs (see issue3657). In this case where
there is not a real default path, these operations should abort with
"default(-push) not found", like the source repo would. Note this problem with
the original fix affected repos without subrepos too.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Tue, 27 Nov 2012 20:56:27 -0500 |
parents | f2719b387380 |
children | 0342bf292f73 |
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 .. |