tests/test-convert-hg-sink.t
changeset 12525 81bf25ddd76a
parent 8693 68e0a55eee6e
child 19892 77872b002e73
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-convert-hg-sink.t	Sun Sep 26 16:47:59 2010 -0500
@@ -0,0 +1,124 @@
+
+  $ cat >> $HGRCPATH <<EOF
+  > [extensions]
+  > convert=
+  > [convert]
+  > hg.saverev=False
+  > EOF
+  $ hg init orig
+  $ cd orig
+  $ echo foo > foo
+  $ echo bar > bar
+  $ hg ci -qAm 'add foo and bar'
+  $ hg rm foo
+  $ hg ci -m 'remove foo'
+  $ mkdir foo
+  $ echo file > foo/file
+  $ hg ci -qAm 'add foo/file'
+  $ hg tag some-tag
+  $ hg log
+  changeset:   3:593cbf6fb2b4
+  tag:         tip
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     Added tag some-tag for changeset ad681a868e44
+  
+  changeset:   2:ad681a868e44
+  tag:         some-tag
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     add foo/file
+  
+  changeset:   1:cbba8ecc03b7
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     remove foo
+  
+  changeset:   0:327daa9251fa
+  user:        test
+  date:        Thu Jan 01 00:00:00 1970 +0000
+  summary:     add foo and bar
+  
+  $ cd ..
+  $ hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded'
+  initializing destination new repository
+  scanning source...
+  sorting...
+  converting...
+  3 add foo and bar
+  2 remove foo
+  1 add foo/file
+  0 Added tag some-tag for changeset ad681a868e44
+  $ cd new
+  $ hg out ../orig
+  comparing with ../orig
+  searching for changes
+  no changes found
+  [1]
+
+dirstate should be empty:
+
+  $ hg debugstate
+  $ hg parents -q
+  $ hg up -C
+  3 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ hg copy bar baz
+
+put something in the dirstate:
+
+  $ hg debugstate > debugstate
+  $ grep baz debugstate
+  a   0         -1 unset               baz
+  copy: bar -> baz
+
+add a new revision in the original repo
+
+  $ cd ../orig
+  $ echo baz > baz
+  $ hg ci -qAm 'add baz'
+  $ cd ..
+  $ hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded'
+  scanning source...
+  sorting...
+  converting...
+  0 add baz
+  $ cd new
+  $ hg out ../orig
+  comparing with ../orig
+  searching for changes
+  no changes found
+  [1]
+
+dirstate should be the same (no output below):
+
+  $ hg debugstate > new-debugstate
+  $ diff debugstate new-debugstate
+
+no copies
+
+  $ hg up -C
+  1 files updated, 0 files merged, 0 files removed, 0 files unresolved
+  $ hg debugrename baz
+  baz not renamed
+  $ cd ..
+
+test tag rewriting
+
+  $ cat > filemap <<EOF
+  > exclude foo
+  > EOF
+  $ hg convert --filemap filemap orig new-filemap 2>&1 | grep -v 'subversion python bindings could not be loaded'
+  initializing destination new-filemap repository
+  scanning source...
+  sorting...
+  converting...
+  4 add foo and bar
+  3 remove foo
+  2 add foo/file
+  1 Added tag some-tag for changeset ad681a868e44
+  0 add baz
+  $ cd new-filemap
+  $ hg tags
+  tip                                2:6f4fd1df87fb
+  some-tag                           0:ba8636729451
+  $ cd ..