--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-qsync.t Fri May 04 14:33:35 2012 +0200
@@ -0,0 +1,212 @@
+ $ cat >> $HGRCPATH <<EOF
+ > [defaults]
+ > amend=-d "0 0"
+ > [web]
+ > push_ssl = false
+ > allow_push = *
+ > [phases]
+ > publish = False
+ > [alias]
+ > qlog = log --template='{rev} - {node|short} {desc} ({phase})\n'
+ > mqlog = log --mq --template='{rev} - {desc}\n'
+ > [diff]
+ > git = 1
+ > unified = 0
+ > [extensions]
+ > hgext.rebase=
+ > hgext.graphlog=
+ > hgext.mq=
+ > EOF
+ $ echo "obsolete=$(echo $(dirname $TESTDIR))/hgext/obsolete.py" >> $HGRCPATH
+ $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext/evolve.py" >> $HGRCPATH
+ $ echo "qsync=$(echo $(dirname $TESTDIR))/hgext/qsync.py" >> $HGRCPATH
+ $ mkcommit() {
+ > echo "$1" > "$1"
+ > hg add "$1"
+ > hg ci -m "add $1"
+ > }
+
+basic sync
+
+ $ hg init local
+ $ cd local
+ $ hg qinit -c
+ $ hg qci -m "initial commit"
+ $ mkcommit a
+ $ mkcommit b
+ $ hg qlog
+ 1 - 7c3bad9141dc add b (draft)
+ 0 - 1f0dee641bb7 add a (draft)
+ $ hg qsync -a
+ $ hg mqlog
+ 2 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 1 - qsubmit init
+ 0 - initial commit
+
+basic sync II
+
+ $ hg init local
+ $ cd local
+ $ hg qinit -c
+ $ hg qci -m "initial commit"
+ $ mkcommit a
+ $ mkcommit b
+ $ hg qlog
+ 1 - 7c3bad9141dc add b (draft)
+ 0 - 1f0dee641bb7 add a (draft)
+ $ hg qsync -a
+ $ hg mqlog
+ 2 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 1 - qsubmit init
+ 0 - initial commit
+
+ $ echo "b" >> b
+ $ hg amend
+ $ hg qsync -a
+ $ hg mqlog
+ 3 - qsubmit commit
+
+ * DEFAULT-add_b.diff ready for review
+ 2 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 1 - qsubmit init
+ 0 - initial commit
+
+ $ hg up -r 0
+ 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
+ $ echo "a" >> a
+ $ hg amend
+ 1 new unstables changesets
+ $ hg graft -O 3
+ grafting revision 3
+ $ hg qsync -a
+ $ hg mqlog
+ 4 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 3 - qsubmit commit
+
+ * DEFAULT-add_b.diff ready for review
+ 2 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 1 - qsubmit init
+ 0 - initial commit
+
+sync with published changeset
+
+ $ hg init local
+ $ cd local
+ $ hg qinit -c
+ $ hg qci -m "initial commit"
+ $ mkcommit a
+ $ mkcommit b
+ $ hg qlog
+ 1 - 7c3bad9141dc add b (draft)
+ 0 - 1f0dee641bb7 add a (draft)
+ $ hg qsync -a
+ $ hg mqlog
+ 2 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 1 - qsubmit init
+ 0 - initial commit
+
+ $ hg phase -p 0
+ $ hg qsync -a
+ $ hg mqlog
+ 3 - qsubmit commit
+
+ * applied DEFAULT-add_a.diff
+ 2 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 1 - qsubmit init
+ 0 - initial commit
+
+ $ mkcommit c
+ $ mkcommit d
+ $ hg qsync -a
+ $ hg mqlog
+ 4 - qsubmit commit
+
+ * DEFAULT-add_c.diff ready for review
+ * DEFAULT-add_d.diff ready for review
+ 3 - qsubmit commit
+
+ * applied DEFAULT-add_a.diff
+ 2 - qsubmit commit
+
+ * DEFAULT-add_a.diff ready for review
+ * DEFAULT-add_b.diff ready for review
+ 1 - qsubmit init
+ 0 - initial commit
+
+ $ cd ..
+ $ hg qclone -U local local2
+ $ cd local2
+ $ hg qlog
+ 3 - 47d2a3944de8 add d (draft)
+ 2 - 4538525df7e2 add c (draft)
+ 1 - 7c3bad9141dc add b (draft)
+ 0 - 1f0dee641bb7 add a (public)
+ $ hg strip -n 1 --no-backup
+ $ hg up
+ 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ hg up --mq 4
+ 6 files updated, 0 files merged, 0 files removed, 0 files unresolved
+ $ hg qseries
+ DEFAULT-add_b.diff
+ DEFAULT-add_c.diff
+ DEFAULT-add_d.diff
+ $ hg qpush
+ applying DEFAULT-add_b.diff
+ now at: DEFAULT-add_b.diff
+ $ hg qfinish -a
+ $ hg phase -p .
+ $ hg qci -m "applied DEFAULT-add_b.diff"
+ $ cd ../local
+ $ hg pull ../local2
+ pulling from ../local2
+ searching for changes
+ no changes found
+ $ hg pull --mq ../local2/.hg/patches
+ pulling from ../local2/.hg/patches
+ searching for changes
+ adding changesets
+ adding manifests
+ adding file changes
+ added 1 changesets with 1 changes to 1 files
+ (run 'hg update' to get a working copy)
+ $ hg qlog
+ 3 - 47d2a3944de8 add d (draft)
+ 2 - 4538525df7e2 add c (draft)
+ 1 - 7c3bad9141dc add b (public)
+ 0 - 1f0dee641bb7 add a (public)
+ $ hg mqlog -l 1
+ 5 - applied DEFAULT-add_b.diff
+ $ hg status --mq --rev tip:-2
+ M series
+ A DEFAULT-add_b.diff
+ $ hg qsync -a
+ $ hg status --mq --rev tip:-2
+ M qsubmitdata
+ $ hg mqlog -l 1
+ 6 - qsubmit commit
+
+ * applied DEFAULT-add_b.diff
+ $ hg qsync -a
+ abort: Nothing changed
+ [255]