Mercurial > hg
annotate tests/test-update-dest.t @ 31971:73e9328e5307
obsolescence: add test case D-3 for obsolescence markers exchange
About 3 years ago, in August 2014, the logic to select what markers to select on
push was ported from the evolve extension to Mercurial core. However, for some
unclear reasons, the tests for that logic were not ported alongside.
I realised it a couple of weeks ago while working on another push related issue.
I've made a clean up pass on the tests and they are now ready to integrate the
core test suite. This series of changesets do not change any logic. I just adds
test for logic that has been around for about 10 versions of Mercurial.
They are a patch for each test case. It makes it easier to review and postpone
one with documentation issues without rejecting the wholes series.
This patch introduce case D3: missing prune target (prune not in "pushed set")
Each test case comes it in own test file. It help parallelism and does not
introduce a significant overhead from having a single unified giant test file.
Here are timing to support this claim.
# Multiple test files version:
# run-tests.py --local -j 1 test-exchange-*.t
53.40s user 6.82s system 85% cpu 1:10.76 total
52.79s user 6.97s system 85% cpu 1:09.97 total
52.94s user 6.82s system 85% cpu 1:09.69 total
# Single test file version:
# run-tests.py --local -j 1 test-exchange-obsmarkers.t
52.97s user 6.85s system 85% cpu 1:10.10 total
52.64s user 6.79s system 85% cpu 1:09.63 total
53.70s user 7.00s system 85% cpu 1:11.17 total
author | Pierre-Yves David <pierre-yves.david@ens-lyon.org> |
---|---|
date | Mon, 10 Apr 2017 16:54:43 +0200 |
parents | 86246530b8d2 |
children | 8abbae93045a |
rev | line source |
---|---|
31844
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
1 Test update.requiredest |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
2 $ cd $TESTTMP |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
3 $ cat >> $HGRCPATH <<EOF |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
4 > [commands] |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
5 > update.requiredest = True |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
6 > EOF |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
7 $ hg init repo |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
8 $ cd repo |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
9 $ echo a >> a |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
10 $ hg commit -qAm aa |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
11 $ hg up |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
12 abort: you must specify a destination |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
13 (for example: hg update ".::") |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
14 [255] |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
15 $ hg up . |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
16 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
17 $ HGPLAIN=1 hg up |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
18 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
19 $ hg --config commands.update.requiredest=False up |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
20 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
21 |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
22 $ cd .. |
478999e8281d
tests: move update requiredest test to own test file
Ryan McElroy <rmcelroy@fb.com>
parents:
diff
changeset
|
23 |
31845
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
24 Check update.requiredest interaction with pull --update |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
25 $ hg clone repo clone |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
26 updating to branch default |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
27 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
28 $ cd repo |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
29 $ echo a >> a |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
30 $ hg commit -qAm aa |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
31 $ cd ../clone |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
32 $ hg pull --update |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
33 abort: update destination required by configuration |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
34 (use hg pull followed by hg update DEST) |
86246530b8d2
pull: abort pull --update if config requires destination (issue5528)
Ryan McElroy <rmcelroy@fb.com>
parents:
31844
diff
changeset
|
35 [255] |