Mercurial > hg
annotate tests/test-hup.t @ 21553:bee0e1cffdd3
import: add --partial flag to create a changeset despite failed hunks
The `hg import` command gains a `--partial` flag. When specified, a commit will
always be created from a patch import. Any hunk that fails to apply will
create .rej file, same as what `hg qimport` would do. This change is mainly
aimed at preserving changeset metadata when applying a patch, something very
important for reviewers.
In case of failure with `--partial`, `hg import` returns 1 and the following
message is displayed:
patch applied partially
(fix the .rej files and run `hg commit --amend`)
When multiple patches are imported, we stop at the first one with failed hunks.
In the future, someone may feel brave enough to tackle a --continue flag to
import.
author | Pierre-Yves David <pierre-yves.david@fb.com> |
---|---|
date | Thu, 08 May 2014 17:08:17 -0700 |
parents | 9fae01831dea |
children | 7a9cbb315d84 |
rev | line source |
---|---|
12413 | 1 Test hangup signal in the middle of transaction |
642 | 2 |
15446
c5c9ca3719f9
tests: use 'hghave serve' to guard tests that requires serve daemon management
Mads Kiilerich <mads@kiilerich.com>
parents:
14266
diff
changeset
|
3 $ "$TESTDIR/hghave" serve fifo || exit 80 |
12413 | 4 $ hg init |
5 $ mkfifo p | |
16342
7e24d34837a9
tests: make test-hup more race-proof
Matt Mackall <mpm@selenic.com>
parents:
16299
diff
changeset
|
6 $ hg serve --stdio < p 1>out 2>&1 & |
12413 | 7 $ P=$! |
16299
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
8 |
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
9 Do test while holding fifo open |
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
10 |
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
11 $ ( |
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
12 > echo lock |
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
13 > echo addchangegroup |
20896
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
14 > start=`date +%s` |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
15 > # 10 second seems much enough to let the server catch up |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
16 > deadline=`expr $start + 10` |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
17 > while [ ! -s .hg/store/journal ]; do |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
18 > sleep 0; |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
19 > if [ `date +%s` -gt $deadline ]; then |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
20 > echo "transaction did not start after 10 seconds" >&2; |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
21 > exit 1; |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
22 > fi |
9fae01831dea
tests: prevent test-hup from hanging forever if the transaction does not start
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
16364
diff
changeset
|
23 > done |
16299
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
24 > kill -HUP $P |
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
25 > ) > p |
16342
7e24d34837a9
tests: make test-hup more race-proof
Matt Mackall <mpm@selenic.com>
parents:
16299
diff
changeset
|
26 |
16344
fb765286f2f9
tests: avoid zombie lockup with test-hup
Matt Mackall <mpm@selenic.com>
parents:
16342
diff
changeset
|
27 $ wait |
16342
7e24d34837a9
tests: make test-hup more race-proof
Matt Mackall <mpm@selenic.com>
parents:
16299
diff
changeset
|
28 $ cat out |
12413 | 29 0 |
30 0 | |
31 adding changesets | |
32 transaction abort! | |
33 rollback completed | |
34 killed! | |
16299
853ffcafecfa
tests: remove sleep/startup/shutdown races from test-hup
Matt Mackall <mpm@selenic.com>
parents:
15455
diff
changeset
|
35 |
12413 | 36 $ echo .hg/* .hg/store/* |
15455
c6f87bdab2a1
phases: add rollback support
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
15446
diff
changeset
|
37 .hg/00changelog.i .hg/journal.bookmarks .hg/journal.branch .hg/journal.desc .hg/journal.dirstate .hg/requires .hg/store .hg/store/00changelog.i .hg/store/00changelog.i.a .hg/store/journal.phaseroots |