tests/test-exchange-A4.t
changeset 833 cf803a36e3fb
child 905 b177fde040dd
equal deleted inserted replaced
832:46e81a5d2d94 833:cf803a36e3fb
       
     1 
       
     2 Initial setup
       
     3 
       
     4   $ . $TESTDIR/_exc-util.sh
       
     5 
       
     6 
       
     7 === A.4 Push in the middle of the obsolescence chain ===
       
     8 
       
     9 .. (Where we show that we should not push the marker without the successors)
       
    10 ..
       
    11 .. {{{
       
    12 ..   B ◔
       
    13 ..     |
       
    14 ..   A⇠ø⇠○ A'
       
    15 ..     |/
       
    16 ..     ● O
       
    17 .. }}}
       
    18 ..
       
    19 .. Marker exist from:
       
    20 ..
       
    21 ..  * `Aø⇠○ A'`
       
    22 ..  * chain from A
       
    23 ..
       
    24 .. Command run:
       
    25 ..
       
    26 ..  * hg push -r B
       
    27 ..
       
    28 .. Expected exchange:
       
    29 ..
       
    30 ..  * Chain from A
       
    31 ..
       
    32 .. Expected Exclude:
       
    33 ..
       
    34 ..  * `Aø⇠○ A'`
       
    35 
       
    36 
       
    37 initial
       
    38 
       
    39   $ setuprepos A.4
       
    40   creating test repo for test case A.4
       
    41   - pulldest
       
    42   - main
       
    43   - pushdest
       
    44   cd into `main` and proceed with env setup
       
    45   $ cd main
       
    46   $ mkcommit A0
       
    47   $ mkcommit B
       
    48   $ hg update 0
       
    49   0 files updated, 0 files merged, 2 files removed, 0 files unresolved
       
    50   $ mkcommit A1
       
    51   created new head
       
    52   $ hg debugobsolete aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa `getid 'desc(A0)'`
       
    53   $ hg debugobsolete `getid 'desc(A0)'` `getid 'desc(A1)'`
       
    54   $ hg log -G --hidden
       
    55   @  e5ea8f9c7314 (draft): A1
       
    56   |
       
    57   | o  06055a7959d4 (draft): B
       
    58   | |
       
    59   | x  28b51eb45704 (draft): A0
       
    60   |/
       
    61   o  a9bdc8b26820 (public): O
       
    62   
       
    63   $ hg debugobsolete
       
    64   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'}
       
    65   28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'}
       
    66   $ cd ..
       
    67   $ cd ..
       
    68 
       
    69 Actual Test for first version (changeset unknown remotly)
       
    70 ---------------------------------------------------------
       
    71 
       
    72   $ dotest A.4 B -f
       
    73   ## Running testcase A.4
       
    74   # testing echange of "B" (06055a7959d4)
       
    75   ## initial state
       
    76   # obstore: main
       
    77   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'}
       
    78   28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'}
       
    79   # obstore: pushdest
       
    80   # obstore: pulldest
       
    81   ## pushing "B" from main to pushdest
       
    82   pushing to pushdest
       
    83   searching for changes
       
    84   adding changesets
       
    85   adding manifests
       
    86   adding file changes
       
    87   added 2 changesets with 2 changes to 2 files
       
    88   OBSEXC: computing relevant nodes
       
    89   OBSEXC: computing markers relevant to 3 nodes
       
    90   OBSEXC: encoding 1 markers
       
    91   OBSEXC: sending 1 pushkey payload (78 bytes)
       
    92   OBSEXC: DONE
       
    93   ## post push state
       
    94   # obstore: main
       
    95   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'}
       
    96   28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'}
       
    97   # obstore: pushdest
       
    98   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'}
       
    99   # obstore: pulldest
       
   100   ## pulling "06055a7959d4" from main into pulldest
       
   101   pulling from main
       
   102   searching for changes
       
   103   adding changesets
       
   104   adding manifests
       
   105   adding file changes
       
   106   added 2 changesets with 2 changes to 2 files
       
   107   OBSEXC: pull obsolescence markers
       
   108   OBSEXC: merging obsolescence markers (62 bytes)
       
   109   OBSEXC: 1 markers added
       
   110   OBSEXC: DONE
       
   111   (run 'hg update' to get a working copy)
       
   112   ## post pull state
       
   113   # obstore: main
       
   114   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'}
       
   115   28b51eb45704506b5c603decd6bf7ac5e0f6a52f e5ea8f9c73143125d36658e90ef70c6d2027a5b7 0 {'date': '', 'user': 'test'}
       
   116   # obstore: pushdest
       
   117   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'}
       
   118   # obstore: pulldest
       
   119   aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa 28b51eb45704506b5c603decd6bf7ac5e0f6a52f 0 {'date': '', 'user': 'test'}