tests/test-merge10.t
author Gregory Szorc <gregory.szorc@gmail.com>
Wed, 28 Mar 2018 10:40:41 -0700
changeset 37295 45b39c69fae0
parent 34661 eb586ed5d8ce
child 41524 faa49a5914bb
permissions -rw-r--r--
wireproto: separate commands tables for version 1 and 2 commands We can't easily reuse existing command handlers for version 2 commands because the response types will be different. e.g. many commands return nodes encoded as hex. Our new wire protocol is binary safe, so we'll wish to encode nodes as binary. We /could/ teach each command handler to look at the protocol handler and change behavior based on the version in use. However, this would make logic a bit unwieldy over time and would make it harder to design a unified protocol handler interface. I think it's better to create a clean break between version 1 and version 2 of commands on the server. What I imagine happening is we will have separate @wireprotocommand functions for each protocol generation. Those functions will parse the request, dispatch to a common function to process it, then generate the response in its own, transport-specific manner. This commit establishes a separate table for tracking version 1 commands from version 2 commands. The HTTP server pieces have been updated to use this new table. Most commands are marked as both version 1 and version 2, so there is little practical impact to this change. A side-effect of this change is we now rely on transport registration in wireprototypes.TRANSPORTS and certain properties of the protocol interface. So a test had to be updated to conform. Differential Revision: https://phab.mercurial-scm.org/D2982
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     1
Test for changeset 9fe267f77f56ff127cf7e65dc15dd9de71ce8ceb
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     2
(merge correctly when all the files in a directory are moved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     3
but then local changes are added in the same directory)
4696
59b8f9361545 tests: add merge test for changeset 9fe267f77f56
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
     4
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     5
  $ hg init a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     6
  $ cd a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     7
  $ mkdir -p testdir
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     8
  $ echo a > testdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
     9
  $ hg add testdir/a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    10
  $ hg commit -m a
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    11
  $ cd ..
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    12
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    13
  $ hg clone a b
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    14
  updating to branch default
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    15
  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    16
  $ cd a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    17
  $ echo alpha > testdir/a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    18
  $ hg commit -m remote-change
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    19
  $ cd ..
4696
59b8f9361545 tests: add merge test for changeset 9fe267f77f56
Giorgos Keramidas <keramida@ceid.upatras.gr>
parents:
diff changeset
    20
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    21
  $ cd b
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    22
  $ mkdir testdir/subdir
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    23
  $ hg mv testdir/a testdir/subdir/a
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    24
  $ hg commit -m move
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    25
  $ mkdir newdir
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    26
  $ echo beta > newdir/beta
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    27
  $ hg add newdir/beta
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    28
  $ hg commit -m local-addition
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    29
  $ hg pull ../a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    30
  pulling from ../a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    31
  searching for changes
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    32
  adding changesets
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    33
  adding manifests
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    34
  adding file changes
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    35
  added 1 changesets with 1 changes to 1 files (+1 heads)
34661
eb586ed5d8ce transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 16913
diff changeset
    36
  new changesets cc7000b01af9
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    37
  (run 'hg heads' to see heads, 'hg merge' to merge)
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    38
  $ hg up -C 2
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    39
  0 files updated, 0 files merged, 0 files removed, 0 files unresolved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    40
  $ hg merge
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    41
  merging testdir/subdir/a and testdir/a to testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    42
  0 files updated, 1 files merged, 0 files removed, 0 files unresolved
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    43
  (branch merge, don't forget to commit)
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    44
  $ hg stat
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    45
  M testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    46
  $ hg diff --nodates
12156
4c94b6d0fb1c tests: remove unneeded -d flags
Martin Geisler <mg@lazybytes.net>
parents: 11983
diff changeset
    47
  diff -r bc21c9773bfa testdir/subdir/a
11983
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    48
  --- a/testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    49
  +++ b/testdir/subdir/a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    50
  @@ -1,1 +1,1 @@
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    51
  -a
27649cf258e3 tests: unify test-merge10
Pradeepkumar Gayam <in3xes@gmail.com>
parents: 8168
diff changeset
    52
  +alpha
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12156
diff changeset
    53
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 12156
diff changeset
    54
  $ cd ..