Mercurial > hg
annotate tests/test-diff-subdir.t @ 33766:4c706037adef
wireproto: overhaul iterating batcher code (API)
The remote batching code is difficult to read. Let's improve it.
As part of the refactor, the future returned by method calls on
batchiter() instances is now populated. However, you still need to
consume the results() generator for the future to be set. But at
least now we can stuff the future somewhere and not have to worry
about aligning method call order with result order since you can
use a future to hold the result.
Also as part of the change, we now verify that @batchable generators
yield exactly 2 values. In other words, we enforce their API.
The non-iter batcher has been unused since b6e71f8af5b8. And to my
surprise we had no explicit unit test coverage of it! test-batching.py
has been overhauled to use the iterating batcher.
Since the iterating batcher doesn't allow non-batchable method
calls nor local calls, tests have been updated to reflect reality.
The iterating batcher has been used for multiple releases apparently
without major issue. So this shouldn't cause alarm.
.. api::
@peer.batchable functions must now yield exactly 2 values
Differential Revision: https://phab.mercurial-scm.org/D319
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Wed, 09 Aug 2017 23:29:30 -0700 |
parents | 16961d43dc89 |
children |
rev | line source |
---|---|
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
1 $ hg init |
2879
66eff8355168
tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff
changeset
|
2 |
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
3 $ mkdir alpha |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
4 $ touch alpha/one |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
5 $ mkdir beta |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
6 $ touch beta/two |
2879
66eff8355168
tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff
changeset
|
7 |
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
8 $ hg add alpha/one beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
9 $ hg ci -m "start" |
2879
66eff8355168
tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff
changeset
|
10 |
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
11 $ echo 1 > alpha/one |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
12 $ echo 2 > beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
13 |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
14 everything |
2879
66eff8355168
tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff
changeset
|
15 |
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
16 $ hg diff --nodates |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
17 diff -r 7d5ef1aea329 alpha/one |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
18 --- a/alpha/one |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
19 +++ b/alpha/one |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
20 @@ -0,0 +1,1 @@ |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
21 +1 |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
22 diff -r 7d5ef1aea329 beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
23 --- a/beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
24 +++ b/beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
25 @@ -0,0 +1,1 @@ |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
26 +2 |
2879
66eff8355168
tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff
changeset
|
27 |
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
28 beta only |
2879
66eff8355168
tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff
changeset
|
29 |
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
30 $ hg diff --nodates beta |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
31 diff -r 7d5ef1aea329 beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
32 --- a/beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
33 +++ b/beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
34 @@ -0,0 +1,1 @@ |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
35 +2 |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
36 |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
37 inside beta |
2879
66eff8355168
tests: new test for hg diff of a subdirectory only
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff
changeset
|
38 |
12140
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
39 $ cd beta |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
40 $ hg diff --nodates . |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
41 diff -r 7d5ef1aea329 beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
42 --- a/beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
43 +++ b/beta/two |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
44 @@ -0,0 +1,1 @@ |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
45 +2 |
552ea44c1842
tests: unify test-diff-subdir
Adrian Buehlmann <adrian@cadifra.com>
parents:
3199
diff
changeset
|
46 |
24432
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
47 relative to beta |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
48 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
12140
diff
changeset
|
49 $ cd .. |
24455
16961d43dc89
diff: rename --relative option to --root
Sean Farley <sean@farley.io>
parents:
24432
diff
changeset
|
50 $ hg diff --nodates --root beta |
24432
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
51 diff -r 7d5ef1aea329 two |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
52 --- a/two |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
53 +++ b/two |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
54 @@ -0,0 +1,1 @@ |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
55 +2 |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
56 |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
57 inside beta |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
58 |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
59 $ cd beta |
24455
16961d43dc89
diff: rename --relative option to --root
Sean Farley <sean@farley.io>
parents:
24432
diff
changeset
|
60 $ hg diff --nodates --root . |
24432
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
61 diff -r 7d5ef1aea329 two |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
62 --- a/two |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
63 +++ b/two |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
64 @@ -0,0 +1,1 @@ |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
65 +2 |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
66 |
e22248f6d257
commands.diff: add support for diffs relative to a subdirectory
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
67 $ cd .. |