tests/test-subrepo-svn.t
branchstable
changeset 21564 2e91d4964ecd
parent 21024 7731a2281cf0
child 21566 a01988cd9b61
--- a/tests/test-subrepo-svn.t	Sat May 17 14:43:06 2014 +0900
+++ b/tests/test-subrepo-svn.t	Thu May 08 19:03:00 2014 +0900
@@ -632,3 +632,48 @@
   Checked out revision 15.
   2 files updated, 0 files merged, 0 files removed, 0 files unresolved
   $ cd ..
+
+Test sanitizing ".hg/hgrc" in subrepo
+
+  $ cd sub/t
+  $ hg update -q -C tip
+  $ cd s
+  $ mkdir .hg
+  $ echo '.hg/hgrc in svn repo' > .hg/hgrc
+  $ mkdir -p sub/.hg
+  $ echo 'sub/.hg/hgrc in svn repo' > sub/.hg/hgrc
+  $ svn add .hg sub
+  A         .hg
+  A         .hg/hgrc (glob)
+  A         sub
+  A         sub/.hg (glob)
+  A         sub/.hg/hgrc (glob)
+  $ svn ci -m 'add .hg/hgrc to be sanitized at hg update'
+  Adding         .hg
+  Adding         .hg/hgrc (glob)
+  Adding         sub
+  Adding         sub/.hg (glob)
+  Adding         sub/.hg/hgrc (glob)
+  Transmitting file data ..
+  Committed revision 16.
+  $ svn up -q
+  $ cd ..
+  $ hg commit -S -m 'commit with svn revision including .hg/hgrc'
+  $ grep ' s$' .hgsubstate
+  16 s
+  $ cd ..
+
+  $ cd tc
+  $ hg pull -u -q 2>&1 | sort
+  warning: removing potentially hostile 'hgrc' in 's/.hg' (glob)
+  warning: removing potentially hostile 'hgrc' in 's/sub/.hg' (glob)
+  $ grep ' s$' .hgsubstate
+  16 s
+  $ cat s/.hg/hgrc
+  cat: s/.hg/hgrc: No such file or directory
+  [1]
+  $ cat s/sub/.hg/hgrc
+  cat: s/sub/.hg/hgrc: No such file or directory
+  [1]
+
+  $ cd ../..