diff tests/test-fncache.t @ 11865:400aa8f28f6b

tests: unify test-fncache
author Adrian Buehlmann <adrian@cadifra.com>
date Thu, 12 Aug 2010 17:30:12 +0200
parents tests/test-fncache@2816239e0020
children 4134686b83e1
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/test-fncache.t	Thu Aug 12 17:30:12 2010 +0200
@@ -0,0 +1,108 @@
+Init repo1:
+
+  $ hg init repo1
+  $ cd repo1
+  $ echo "some text" > a
+  $ hg add
+  adding a
+  $ hg ci -m first
+  $ cat .hg/store/fncache
+  data/a.i
+
+Testing a.i/b:
+
+  $ mkdir a.i
+  $ echo "some other text" > a.i/b
+  $ hg add
+  adding a.i/b
+  $ hg ci -m second
+  $ cat .hg/store/fncache
+  data/a.i
+  data/a.i.hg/b.i
+
+Testing a.i.hg/c:
+
+  $ mkdir a.i.hg
+  $ echo "yet another text" > a.i.hg/c
+  $ hg add
+  adding a.i.hg/c
+  $ hg ci -m third
+  $ cat .hg/store/fncache
+  data/a.i
+  data/a.i.hg/b.i
+  data/a.i.hg.hg/c.i
+
+Testing verify:
+
+  $ hg verify
+  checking changesets
+  checking manifests
+  crosschecking files in changesets and manifests
+  checking files
+  3 files, 3 changesets, 3 total revisions
+
+  $ rm .hg/store/fncache
+
+  $ hg verify
+  checking changesets
+  checking manifests
+  crosschecking files in changesets and manifests
+  checking files
+   data/a.i@0: missing revlog!
+   data/a.i.hg/c.i@2: missing revlog!
+   data/a.i/b.i@1: missing revlog!
+  3 files, 3 changesets, 3 total revisions
+  3 integrity errors encountered!
+  (first damaged changeset appears to be 0)
+  $ cd ..
+
+Non store repo:
+
+  $ hg --config format.usestore=False init foo
+  $ cd foo
+  $ mkdir tst.d
+  $ echo foo > tst.d/foo
+  $ hg ci -Amfoo
+  adding tst.d/foo
+  $ find .hg | sort
+  .hg
+  .hg/00changelog.i
+  .hg/00manifest.i
+  .hg/data
+  .hg/data/tst.d.hg
+  .hg/data/tst.d.hg/foo.i
+  .hg/dirstate
+  .hg/last-message.txt
+  .hg/requires
+  .hg/undo
+  .hg/undo.branch
+  .hg/undo.desc
+  .hg/undo.dirstate
+  $ cd ..
+
+Non fncache repo:
+
+  $ hg --config format.usefncache=False init bar
+  $ cd bar
+  $ mkdir tst.d
+  $ echo foo > tst.d/Foo
+  $ hg ci -Amfoo
+  adding tst.d/Foo
+  $ find .hg | sort
+  .hg
+  .hg/00changelog.i
+  .hg/dirstate
+  .hg/last-message.txt
+  .hg/requires
+  .hg/store
+  .hg/store/00changelog.i
+  .hg/store/00manifest.i
+  .hg/store/data
+  .hg/store/data/tst.d.hg
+  .hg/store/data/tst.d.hg/_foo.i
+  .hg/store/undo
+  .hg/undo.branch
+  .hg/undo.desc
+  .hg/undo.dirstate
+  $ cd ..
+