tests/test-treediscovery-legacy.t
changeset 14411 0c35514734e7
child 14831 0407b7613e99
equal deleted inserted replaced
14410:afeb14a8128a 14411:0c35514734e7
       
     1 Tests discovery against servers without getbundle support:
       
     2 
       
     3   $ cat >> $HGRCPATH <<EOF
       
     4   > [ui]
       
     5   > logtemplate="{rev} {node|short}: {desc} {branches}\n"
       
     6   > [extensions]
       
     7   > graphlog=
       
     8   > EOF
       
     9   $ cp $HGRCPATH $HGRCPATH-withcap
       
    10 
       
    11   $ CAP="getbundle known changegroupsubset"
       
    12   $ . "$TESTDIR/notcapable"
       
    13   $ cp $HGRCPATH $HGRCPATH-nocap
       
    14   $ cp $HGRCPATH-withcap $HGRCPATH
       
    15 
       
    16 Setup HTTP server control:
       
    17 
       
    18   $ remote=http://localhost:$HGPORT/
       
    19   $ export remote
       
    20   $ start() {
       
    21   >   echo '[web]' > $1/.hg/hgrc
       
    22   >   echo 'push_ssl = false' >> $1/.hg/hgrc
       
    23   >   echo 'allow_push = *' >> $1/.hg/hgrc
       
    24   >   cp $HGRCPATH-nocap $HGRCPATH
       
    25   >   hg serve -R $1 -p $HGPORT -d --pid-file=hg.pid -E errors.log
       
    26   >   cat hg.pid >> $DAEMON_PIDS
       
    27   > }
       
    28   $ stop() {
       
    29   >   "$TESTDIR/killdaemons.py"
       
    30   >   cp $HGRCPATH-withcap $HGRCPATH
       
    31   > }
       
    32 
       
    33 Both are empty:
       
    34 
       
    35   $ hg init empty1
       
    36   $ hg init empty2
       
    37   $ start empty2
       
    38   $ hg incoming -R empty1 $remote
       
    39   comparing with http://localhost:$HGPORT/
       
    40   no changes found
       
    41   [1]
       
    42   $ hg outgoing -R empty1 $remote
       
    43   comparing with http://localhost:$HGPORT/
       
    44   no changes found
       
    45   [1]
       
    46   $ hg pull -R empty1 $remote
       
    47   pulling from http://localhost:$HGPORT/
       
    48   no changes found
       
    49   $ hg push -R empty1 $remote
       
    50   pushing to http://localhost:$HGPORT/
       
    51   no changes found
       
    52   $ stop
       
    53 
       
    54 Base repo:
       
    55 
       
    56   $ hg init main
       
    57   $ cd main
       
    58   $ hg debugbuilddag -mo '+2:tbase @name1 +3:thead1 <tbase @name2 +4:thead2 @both /thead1 +2:tmaintip'
       
    59   $ hg glog
       
    60   o  11 a19bfa7e7328: r11 both
       
    61   |
       
    62   o  10 8b6bad1512e1: r10 both
       
    63   |
       
    64   o    9 025829e08038: r9 both
       
    65   |\
       
    66   | o  8 d8f638ac69e9: r8 name2
       
    67   | |
       
    68   | o  7 b6b4d315a2ac: r7 name2
       
    69   | |
       
    70   | o  6 6c6f5d5f3c11: r6 name2
       
    71   | |
       
    72   | o  5 70314b29987d: r5 name2
       
    73   | |
       
    74   o |  4 e71dbbc70e03: r4 name1
       
    75   | |
       
    76   o |  3 2c8d5d5ec612: r3 name1
       
    77   | |
       
    78   o |  2 a7892891da29: r2 name1
       
    79   |/
       
    80   o  1 0019a3b924fd: r1
       
    81   |
       
    82   o  0 d57206cc072a: r0
       
    83   
       
    84   $ cd ..
       
    85   $ start main
       
    86 
       
    87 Full clone:
       
    88 
       
    89   $ hg clone main full
       
    90   updating to branch default
       
    91   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
    92   $ cd full
       
    93   $ hg incoming $remote
       
    94   comparing with http://localhost:$HGPORT/
       
    95   searching for changes
       
    96   no changes found
       
    97   [1]
       
    98   $ hg outgoing $remote
       
    99   comparing with http://localhost:$HGPORT/
       
   100   searching for changes
       
   101   no changes found
       
   102   [1]
       
   103   $ hg pull $remote
       
   104   pulling from http://localhost:$HGPORT/
       
   105   searching for changes
       
   106   no changes found
       
   107   $ hg push $remote
       
   108   pushing to http://localhost:$HGPORT/
       
   109   searching for changes
       
   110   no changes found
       
   111   $ cd ..
       
   112 
       
   113 Local is empty:
       
   114 
       
   115   $ cd empty1
       
   116   $ hg incoming $remote --rev name1
       
   117   comparing with http://localhost:$HGPORT/
       
   118   abort: cannot look up remote changes; remote repository does not support the 'changegroupsubset' capability!
       
   119   [255]
       
   120   $ hg incoming $remote
       
   121   comparing with http://localhost:$HGPORT/
       
   122   0 d57206cc072a: r0 
       
   123   1 0019a3b924fd: r1 
       
   124   2 a7892891da29: r2 name1
       
   125   3 2c8d5d5ec612: r3 name1
       
   126   4 e71dbbc70e03: r4 name1
       
   127   5 70314b29987d: r5 name2
       
   128   6 6c6f5d5f3c11: r6 name2
       
   129   7 b6b4d315a2ac: r7 name2
       
   130   8 d8f638ac69e9: r8 name2
       
   131   9 025829e08038: r9 both
       
   132   10 8b6bad1512e1: r10 both
       
   133   11 a19bfa7e7328: r11 both
       
   134   $ hg outgoing $remote
       
   135   comparing with http://localhost:$HGPORT/
       
   136   no changes found
       
   137   [1]
       
   138   $ hg push $remote
       
   139   pushing to http://localhost:$HGPORT/
       
   140   no changes found
       
   141   $ hg pull $remote
       
   142   pulling from http://localhost:$HGPORT/
       
   143   requesting all changes
       
   144   adding changesets
       
   145   adding manifests
       
   146   adding file changes
       
   147   added 12 changesets with 24 changes to 2 files
       
   148   (run 'hg update' to get a working copy)
       
   149   $ hg incoming $remote
       
   150   comparing with http://localhost:$HGPORT/
       
   151   searching for changes
       
   152   no changes found
       
   153   [1]
       
   154   $ cd ..
       
   155 
       
   156 Local is subset:
       
   157 
       
   158   $ cp $HGRCPATH-withcap $HGRCPATH
       
   159   $ hg clone main subset --rev name2 ; cd subset
       
   160   adding changesets
       
   161   adding manifests
       
   162   adding file changes
       
   163   added 6 changesets with 12 changes to 2 files
       
   164   updating to branch name2
       
   165   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
   166   $ cp $HGRCPATH-nocap $HGRCPATH
       
   167   $ hg incoming $remote
       
   168   comparing with http://localhost:$HGPORT/
       
   169   searching for changes
       
   170   6 a7892891da29: r2 name1
       
   171   7 2c8d5d5ec612: r3 name1
       
   172   8 e71dbbc70e03: r4 name1
       
   173   9 025829e08038: r9 both
       
   174   10 8b6bad1512e1: r10 both
       
   175   11 a19bfa7e7328: r11 both
       
   176   $ hg outgoing $remote
       
   177   comparing with http://localhost:$HGPORT/
       
   178   searching for changes
       
   179   no changes found
       
   180   [1]
       
   181   $ hg push $remote
       
   182   pushing to http://localhost:$HGPORT/
       
   183   searching for changes
       
   184   no changes found
       
   185   $ hg pull $remote
       
   186   pulling from http://localhost:$HGPORT/
       
   187   searching for changes
       
   188   adding changesets
       
   189   adding manifests
       
   190   adding file changes
       
   191   added 6 changesets with 12 changes to 2 files
       
   192   (run 'hg update' to get a working copy)
       
   193   $ hg incoming $remote
       
   194   comparing with http://localhost:$HGPORT/
       
   195   searching for changes
       
   196   no changes found
       
   197   [1]
       
   198   $ cd ..
       
   199 
       
   200 Remote is empty:
       
   201 
       
   202   $ stop ; start empty2
       
   203   $ cd main
       
   204   $ hg incoming $remote
       
   205   comparing with http://localhost:$HGPORT/
       
   206   searching for changes
       
   207   no changes found
       
   208   [1]
       
   209   $ hg outgoing $remote
       
   210   comparing with http://localhost:$HGPORT/
       
   211   searching for changes
       
   212   0 d57206cc072a: r0 
       
   213   1 0019a3b924fd: r1 
       
   214   2 a7892891da29: r2 name1
       
   215   3 2c8d5d5ec612: r3 name1
       
   216   4 e71dbbc70e03: r4 name1
       
   217   5 70314b29987d: r5 name2
       
   218   6 6c6f5d5f3c11: r6 name2
       
   219   7 b6b4d315a2ac: r7 name2
       
   220   8 d8f638ac69e9: r8 name2
       
   221   9 025829e08038: r9 both
       
   222   10 8b6bad1512e1: r10 both
       
   223   11 a19bfa7e7328: r11 both
       
   224   $ hg pull $remote
       
   225   pulling from http://localhost:$HGPORT/
       
   226   searching for changes
       
   227   no changes found
       
   228   $ hg push $remote
       
   229   pushing to http://localhost:$HGPORT/
       
   230   searching for changes
       
   231   remote: adding changesets
       
   232   remote: adding manifests
       
   233   remote: adding file changes
       
   234   remote: added 12 changesets with 24 changes to 2 files
       
   235   $ hg outgoing $remote
       
   236   comparing with http://localhost:$HGPORT/
       
   237   searching for changes
       
   238   no changes found
       
   239   [1]
       
   240   $ cd ..
       
   241 
       
   242 Local is superset:
       
   243 
       
   244   $ stop
       
   245   $ hg clone main subset2 --rev name2
       
   246   adding changesets
       
   247   adding manifests
       
   248   adding file changes
       
   249   added 6 changesets with 12 changes to 2 files
       
   250   updating to branch name2
       
   251   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
       
   252   $ start subset2
       
   253   $ cd main
       
   254   $ hg incoming $remote
       
   255   comparing with http://localhost:$HGPORT/
       
   256   searching for changes
       
   257   no changes found
       
   258   [1]
       
   259   $ hg outgoing $remote
       
   260   comparing with http://localhost:$HGPORT/
       
   261   searching for changes
       
   262   2 a7892891da29: r2 name1
       
   263   3 2c8d5d5ec612: r3 name1
       
   264   4 e71dbbc70e03: r4 name1
       
   265   9 025829e08038: r9 both
       
   266   10 8b6bad1512e1: r10 both
       
   267   11 a19bfa7e7328: r11 both
       
   268   $ hg pull $remote
       
   269   pulling from http://localhost:$HGPORT/
       
   270   searching for changes
       
   271   no changes found
       
   272   $ hg push $remote
       
   273   pushing to http://localhost:$HGPORT/
       
   274   searching for changes
       
   275   abort: push creates new remote branches: both, name1!
       
   276   (use 'hg push --new-branch' to create new remote branches)
       
   277   [255]
       
   278   $ hg push $remote --new-branch
       
   279   pushing to http://localhost:$HGPORT/
       
   280   searching for changes
       
   281   remote: adding changesets
       
   282   remote: adding manifests
       
   283   remote: adding file changes
       
   284   remote: added 6 changesets with 12 changes to 2 files
       
   285   $ hg outgoing $remote
       
   286   comparing with http://localhost:$HGPORT/
       
   287   searching for changes
       
   288   no changes found
       
   289   [1]
       
   290   $ cd ..
       
   291 
       
   292 Partial pull:
       
   293 
       
   294   $ stop ; start main
       
   295   $ hg clone $remote partial --rev name2
       
   296   abort: partial pull cannot be done because other repository doesn't support changegroupsubset.
       
   297   [255]
       
   298   $ hg init partial; cd partial
       
   299   $ hg incoming $remote --rev name2
       
   300   comparing with http://localhost:$HGPORT/
       
   301   abort: cannot look up remote changes; remote repository does not support the 'changegroupsubset' capability!
       
   302   [255]
       
   303   $ hg pull $remote --rev name2
       
   304   pulling from http://localhost:$HGPORT/
       
   305   abort: partial pull cannot be done because other repository doesn't support changegroupsubset.
       
   306   [255]
       
   307   $ cd ..
       
   308 
       
   309   $ stop
       
   310