tests/test-exchange-C1.t
changeset 844 45ca2d5f84be
child 905 b177fde040dd
equal deleted inserted replaced
843:ee910ba7a9db 844:45ca2d5f84be
       
     1 
       
     2 Initial setup
       
     3 
       
     4   $ . $TESTDIR/_exc-util.sh
       
     5 
       
     6 === C.1 Multiple pruned changeset atop each other ===
       
     7 .. 
       
     8 .. {{{
       
     9 ..   ⊗ B
       
    10 ..   |
       
    11 ..   ⊗ A
       
    12 ..   |
       
    13 ..   ● O
       
    14 .. }}}
       
    15 .. 
       
    16 .. Marker exist from:
       
    17 .. 
       
    18 ..  * A (prune)
       
    19 ..  * B (prune)
       
    20 .. 
       
    21 .. Command run:
       
    22 .. 
       
    23 ..  * hg push -r O
       
    24 ..  * hg push
       
    25 .. 
       
    26 .. Expected exchange:
       
    27 .. 
       
    28 ..  * A (prune)
       
    29 ..  * B (prune)
       
    30 
       
    31   $ setuprepos C.1
       
    32   creating test repo for test case C.1
       
    33   - pulldest
       
    34   - main
       
    35   - pushdest
       
    36   cd into `main` and proceed with env setup
       
    37   $ cd main
       
    38   $ mkcommit A
       
    39   $ mkcommit B
       
    40   $ hg prune -qd '0 0' .^::.
       
    41   $ hg log -G --hidden
       
    42   x  f6fbb35d8ac9 (draft): B
       
    43   |
       
    44   x  f5bc6836db60 (draft): A
       
    45   |
       
    46   @  a9bdc8b26820 (public): O
       
    47   
       
    48   $ hg debugobsolete
       
    49   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
    50   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
    51   $ cd ..
       
    52   $ cd ..
       
    53 
       
    54   $ cp -r C.1 C.1.a
       
    55   $ cp -r C.1 C.1.b
       
    56 
       
    57 Actual Test (explicite push)
       
    58 -------------------------------------
       
    59 
       
    60   $ dotest C.1.a O
       
    61   ## Running testcase C.1.a
       
    62   # testing echange of "O" (a9bdc8b26820)
       
    63   ## initial state
       
    64   # obstore: main
       
    65   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
    66   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
    67   # obstore: pushdest
       
    68   # obstore: pulldest
       
    69   ## pushing "O" from main to pushdest
       
    70   pushing to pushdest
       
    71   searching for changes
       
    72   no changes found
       
    73   OBSEXC: computing relevant nodes
       
    74   OBSEXC: computing markers relevant to 1 nodes
       
    75   OBSEXC: encoding 2 markers
       
    76   OBSEXC: sending 1 pushkey payload (222 bytes)
       
    77   OBSEXC: DONE
       
    78   ## post push state
       
    79   # obstore: main
       
    80   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
    81   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
    82   # obstore: pushdest
       
    83   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
    84   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
    85   # obstore: pulldest
       
    86   ## pulling "a9bdc8b26820" from main into pulldest
       
    87   pulling from main
       
    88   no changes found
       
    89   OBSEXC: pull obsolescence markers
       
    90   OBSEXC: merging obsolescence markers (177 bytes)
       
    91   OBSEXC: 2 markers added
       
    92   OBSEXC: DONE
       
    93   ## post pull state
       
    94   # obstore: main
       
    95   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
    96   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
    97   # obstore: pushdest
       
    98   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
    99   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
   100   # obstore: pulldest
       
   101   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
   102   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
   103 
       
   104 Actual Test (bare push)
       
   105 -------------------------------------
       
   106 
       
   107   $ dotest C.1.b
       
   108   ## Running testcase C.1.b
       
   109   ## initial state
       
   110   # obstore: main
       
   111   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
   112   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
   113   # obstore: pushdest
       
   114   # obstore: pulldest
       
   115   ## pushing from main to pushdest
       
   116   pushing to pushdest
       
   117   searching for changes
       
   118   no changes found
       
   119   OBSEXC: computing relevant nodes
       
   120   OBSEXC: computing markers relevant to 1 nodes
       
   121   OBSEXC: encoding 2 markers
       
   122   OBSEXC: sending 1 pushkey payload (222 bytes)
       
   123   OBSEXC: DONE
       
   124   ## post push state
       
   125   # obstore: main
       
   126   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
   127   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
   128   # obstore: pushdest
       
   129   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
   130   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
   131   # obstore: pulldest
       
   132   ## pulling from main into pulldest
       
   133   pulling from main
       
   134   searching for changes
       
   135   no changes found
       
   136   OBSEXC: pull obsolescence markers
       
   137   OBSEXC: merging obsolescence markers (177 bytes)
       
   138   OBSEXC: 2 markers added
       
   139   OBSEXC: DONE
       
   140   ## post pull state
       
   141   # obstore: main
       
   142   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
   143   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
   144   # obstore: pushdest
       
   145   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
   146   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}
       
   147   # obstore: pulldest
       
   148   f6fbb35d8ac958bbe70035e4c789c18471cdc0af 0 {'date': '0 0', 'p1': 'f5bc6836db60e308a17ba08bf050154ba9c4fad7', 'user': 'test'}
       
   149   f5bc6836db60e308a17ba08bf050154ba9c4fad7 0 {'date': '0 0', 'p1': 'a9bdc8b26820b1b87d585b82eb0ceb4a2ecdbc04', 'user': 'test'}