tests/test-bookmarks-pushpull.t
branchstable
changeset 12969 6bd9778ae749
parent 12346 3b165c127690
child 13368 d4ab9486e514
--- a/tests/test-bookmarks-pushpull.t	Wed Nov 10 17:28:24 2010 +0100
+++ b/tests/test-bookmarks-pushpull.t	Fri Nov 12 01:21:45 2010 -0600
@@ -22,6 +22,9 @@
 
   $ hg init ../b
   $ cd ../b
+  $ hg book Y
+  $ hg book
+   * Y                         -1:000000000000
   $ hg pull ../a
   pulling from ../a
   requesting all changes
@@ -31,13 +34,21 @@
   added 1 changesets with 1 changes to 1 files
   (run 'hg update' to get a working copy)
   $ hg bookmarks
-  no bookmarks set
+     Y                         0:4e3505fd9583
+  $ hg debugpushkey ../a namespaces
+  bookmarks	
+  namespaces	
+  $ hg debugpushkey ../a bookmarks
+  Y	4e3505fd95835d721066b76e75dbb8cc554d7f77
+  X	4e3505fd95835d721066b76e75dbb8cc554d7f77
+  Z	4e3505fd95835d721066b76e75dbb8cc554d7f77
   $ hg pull -B X ../a
   pulling from ../a
   searching for changes
   no changes found
   importing bookmark X
   $ hg bookmark
+     Y                         0:4e3505fd9583
      X                         0:4e3505fd9583
 
 export bookmark by name
@@ -56,6 +67,12 @@
    * Z                         0:4e3505fd9583
      W                         -1:000000000000
 
+delete a remote bookmark
+
+  $ hg book -d W
+  $ hg push -B W ../a
+  deleting remote bookmark W
+
 push/pull name that doesn't exist
 
   $ hg push -B badname ../a
@@ -64,3 +81,99 @@
   $ hg pull -B anotherbadname ../a
   abort: remote bookmark anotherbadname not found!
   [255]
+
+divergent bookmarks
+
+  $ cd ../a
+  $ echo c1 > f1
+  $ hg ci -Am1
+  adding f1
+  $ hg book -f X
+  $ hg book
+     Y                         0:4e3505fd9583
+   * X                         1:0d2164f0ce0d
+     Z                         1:0d2164f0ce0d
+
+  $ cd ../b
+  $ hg up
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ echo c2 > f2
+  $ hg ci -Am2
+  adding f2
+  $ hg book -f X
+  $ hg book
+     Y                         0:4e3505fd9583
+   * X                         1:9b140be10808
+     foo                       -1:000000000000
+     foobar                    -1:000000000000
+
+  $ hg pull ../a
+  pulling from ../a
+  searching for changes
+  adding changesets
+  adding manifests
+  adding file changes
+  added 1 changesets with 1 changes to 1 files (+1 heads)
+  not updating divergent bookmark X
+  (run 'hg heads' to see heads, 'hg merge' to merge)
+  $ hg book
+     Y                         0:4e3505fd9583
+   * X                         1:9b140be10808
+     foo                       -1:000000000000
+     foobar                    -1:000000000000
+  $ hg push -f ../a
+  pushing to ../a
+  searching for changes
+  adding changesets
+  adding manifests
+  adding file changes
+  added 1 changesets with 1 changes to 1 files (+1 heads)
+  $ hg -R ../a book
+     Y                         0:4e3505fd9583
+   * X                         1:0d2164f0ce0d
+     Z                         1:0d2164f0ce0d
+
+hgweb
+
+  $ cat <<EOF > .hg/hgrc
+  > [web]
+  > push_ssl = false
+  > allow_push = *
+  > EOF
+
+  $ hg serve -p $HGPORT -d --pid-file=../hg.pid -E errors.log
+  $ cat ../hg.pid >> $DAEMON_PIDS
+  $ cd ../a
+
+  $ hg debugpushkey http://localhost:$HGPORT/ namespaces 
+  bookmarks	
+  namespaces	
+  $ hg debugpushkey http://localhost:$HGPORT/ bookmarks
+  Y	4e3505fd95835d721066b76e75dbb8cc554d7f77
+  X	9b140be1080824d768c5a4691a564088eede71f9
+  foo	0000000000000000000000000000000000000000
+  foobar	0000000000000000000000000000000000000000
+  $ hg out -B http://localhost:$HGPORT/
+  comparing with http://localhost:$HGPORT/
+  searching for changed bookmarks
+     Z                         0d2164f0ce0d
+  $ hg push -B Z http://localhost:$HGPORT/
+  pushing to http://localhost:$HGPORT/
+  searching for changes
+  no changes found
+  exporting bookmark Z
+  $ hg book -d Z
+  $ hg in -B http://localhost:$HGPORT/
+  comparing with http://localhost:$HGPORT/
+  searching for changed bookmarks
+     Z                         0d2164f0ce0d
+     foo                       000000000000
+     foobar                    000000000000
+  $ hg pull -B Z http://localhost:$HGPORT/
+  pulling from http://localhost:$HGPORT/
+  searching for changes
+  no changes found
+  not updating divergent bookmark X
+  importing bookmark Z
+
+  $ kill `cat ../hg.pid`