infinitepush: add tests for `hg pull -r <rev>`
authorPulkit Goyal <7895pulkit@gmail.com>
Sat, 31 Mar 2018 16:41:17 +0530
changeset 37240 b5caa13d1a73
parent 37239 40ee0af04e3a
child 37241 79af9ae46a78
infinitepush: add tests for `hg pull -r <rev>` This patch adds test for `hg pull -r <rev>` when the infinitepush extension is not present on the client side and the server by defaults pushes all the incoming push to bundlestore. As the tests show, if a the changeset was applied to the server, that can be pulled, but if a changeset is in the bundlestore we cannot pull that yet. We should support that. Differential Revision: https://phab.mercurial-scm.org/D2998
tests/test-infinitepush-ci.t
--- a/tests/test-infinitepush-ci.t	Sat Mar 31 14:56:57 2018 +0530
+++ b/tests/test-infinitepush-ci.t	Sat Mar 31 16:41:17 2018 +0530
@@ -23,6 +23,7 @@
 
   $ cd ..
   $ hg clone repo client -q
+  $ hg clone repo client2 -q
   $ cd client
 
 Pushing a new commit from the client to the server
@@ -172,6 +173,43 @@
   searching for changes
   no changes found
 
+Pulling from second client to test `hg pull -r <rev>`
+------------------------------------------------------
+
+Pulling the revision which is applied
+
+  $ cd ../client2
+  $ hg pull -r 6cb0989601f1
+  pulling from $TESTTMP/repo
+  searching for changes
+  adding changesets
+  adding manifests
+  adding file changes
+  added 1 changesets with 1 changes to 1 files
+  new changesets 6cb0989601f1
+  (run 'hg update' to get a working copy)
+  $ hg glog
+  o  1:6cb0989601f1 added a
+  |  public
+  @  0:67145f466344 initialcommit
+     public
+
+Pulling the revision which is in bundlestore
+XXX: we should support pulling revisions from bundlestore without client side
+wrapping
+
+  $ hg pull -r b4e4bce660512ad3e71189e14588a70ac8e31fef
+  pulling from $TESTTMP/repo
+  abort: unknown revision 'b4e4bce660512ad3e71189e14588a70ac8e31fef'!
+  [255]
+  $ hg glog
+  o  1:6cb0989601f1 added a
+  |  public
+  @  0:67145f466344 initialcommit
+     public
+
+  $ cd ../client
+
 Checking storage of phase information with the bundle on bundlestore
 ---------------------------------------------------------------------