tests/test-exchange-A2.t
author Pierre-Yves David <pierre-yves.david@fb.com>
Mon, 28 Jul 2014 00:08:06 +0200
changeset 1005 4fe159fdfc4c
parent 957 2cde59f3cb5d
child 1037 bddee73b361e
permissions -rw-r--r--
push: extract obsmarkers discovery in a dedicated function The need to factorise the computation of the markers to send in a dedicated function. This prepare the inclusion of obsmarkers in an atomic bundle2 push. For now, when obsmarkers are pushed using bundle2, they are still doing it on their own, in a dedicated bundle2 push.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     1
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     2
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     3
Initial setup
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     4
829
0943f327e2fb exchance: add a common setup script for all test
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 828
diff changeset
     5
  $ . $TESTDIR/_exc-util.sh
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     6
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     7
=== A.2 Two heads ===
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     8
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
     9
.. {{{
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    10
..     ⇠○ B
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    11
..   ⇠◔ | A
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    12
..    |/
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    13
..     O
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    14
.. }}}
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    15
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    16
.. Marker exist from:
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    17
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    18
..  * A
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    19
..  * B
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    20
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    21
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    22
.. Command run:
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    23
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    24
..  * hg push -r A
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    25
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    26
.. Expected exchange:
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    27
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    28
..  * chain from A
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    29
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    30
.. Expected Exclude:
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    31
..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    32
..  * chain from B
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    33
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    34
initial
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    35
830
f3b3a09ba312 exchange: have a function doing all the common initial setup
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 829
diff changeset
    36
  $ setuprepos A.2
f3b3a09ba312 exchange: have a function doing all the common initial setup
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 829
diff changeset
    37
  creating test repo for test case A.2
f3b3a09ba312 exchange: have a function doing all the common initial setup
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 829
diff changeset
    38
  - pulldest
f3b3a09ba312 exchange: have a function doing all the common initial setup
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 829
diff changeset
    39
  - main
f3b3a09ba312 exchange: have a function doing all the common initial setup
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 829
diff changeset
    40
  - pushdest
f3b3a09ba312 exchange: have a function doing all the common initial setup
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 829
diff changeset
    41
  cd into `main` and proceed with env setup
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    42
  $ cd main
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    43
  $ mkcommit A
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    44
  $ hg debugobsolete aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid 'desc(A)'`
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    45
  $ hg up .^
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    46
  0 files updated, 0 files merged, 1 files removed, 0 files unresolved
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    47
  $ mkcommit B
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    48
  created new head
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    49
  $ hg debugobsolete bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb `getid 'desc(B)'`
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    50
  $ hg log -G
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    51
  @  35b183996678 (draft): B
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    52
  |
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    53
  | o  f5bc6836db60 (draft): A
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    54
  |/
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    55
  o  a9bdc8b26820 (public): O
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    56
  
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    57
  $ hg debugobsolete
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    58
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '', 'user': 'test'}
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    59
  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 35b1839966785d5703a01607229eea932db42f87 0 {'date': '', 'user': 'test'}
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    60
  $ cd ..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    61
  $ cd ..
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    62
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    63
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    64
Actual Test
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    65
---------------
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    66
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    67
  $ dotest A.2 A
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    68
  ## Running testcase A.2
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    69
  # testing echange of "A" (f5bc6836db60)
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    70
  ## initial state
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    71
  # obstore: main
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    72
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '', 'user': 'test'}
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    73
  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 35b1839966785d5703a01607229eea932db42f87 0 {'date': '', 'user': 'test'}
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    74
  # obstore: pushdest
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    75
  # obstore: pulldest
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    76
  ## pushing "A" from main to pushdest
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    77
  pushing to pushdest
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    78
  searching for changes
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    79
  adding changesets
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    80
  adding manifests
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    81
  adding file changes
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    82
  added 1 changesets with 1 changes to 1 files
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    83
  OBSEXC: computing relevant nodes
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    84
  OBSEXC: computing markers relevant to 2 nodes
957
2cde59f3cb5d evolve: add a push pass using bundle2
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 956
diff changeset
    85
  OBSEXC: pushing 1 markers (62 bytes)
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    86
  OBSEXC: DONE
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    87
  ## post push state
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    88
  # obstore: main
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    89
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '', 'user': 'test'}
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    90
  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 35b1839966785d5703a01607229eea932db42f87 0 {'date': '', 'user': 'test'}
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    91
  # obstore: pushdest
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    92
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '', 'user': 'test'}
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    93
  # obstore: pulldest
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
    94
  ## pulling "f5bc6836db60" from main into pulldest
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    95
  pulling from main
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    96
  searching for changes
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    97
  adding changesets
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    98
  adding manifests
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
    99
  adding file changes
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   100
  added 1 changesets with 1 changes to 1 files
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   101
  OBSEXC: pull obsolescence markers
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   102
  OBSEXC: merging obsolescence markers (62 bytes)
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   103
  OBSEXC: 1 markers added
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   104
  OBSEXC: DONE
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   105
  (run 'hg update' to get a working copy)
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
   106
  ## post pull state
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
   107
  # obstore: main
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   108
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '', 'user': 'test'}
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   109
  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb 35b1839966785d5703a01607229eea932db42f87 0 {'date': '', 'user': 'test'}
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
   110
  # obstore: pushdest
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   111
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '', 'user': 'test'}
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
   112
  # obstore: pulldest
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   113
  aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '', 'user': 'test'}
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   114
831
a6af6919888d exchange: automate the testing process too
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 830
diff changeset
   115
828
c362513b3c7e exchange: add test case for A.2
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
diff changeset
   116
  $ cd ..