view tests/test-fncache @ 9827:4fe9ca519637

mdiff: fix diff -b/B/w on mixed whitespace hunks (issue127) Previous code was computing hunks then checking if these hunks could be ignored when taking whitespace/blank-lines options in accounts. This approach is simple but fails with hunks containing both whitespace and non-whitespace changes, the whole hunk is emitted while it can be mostly made of whitespace. The new version normalize the whitespaces before hunk generation, and test for blank-lines afterwards.
author Patrick Mezard <pmezard@gmail.com>
date Wed, 11 Nov 2009 18:31:42 +0100
parents 2816239e0020
children
line wrap: on
line source

#!/bin/sh

echo "% init repo1"
hg init repo1
cd repo1

echo
echo "% add a; ci"
echo "some text" > a
hg add
hg ci -m first

echo
echo "% cat .hg/store/fncache"
cat .hg/store/fncache

echo
echo "% add a.i/b; ci"
mkdir a.i
echo "some other text" > a.i/b
hg add
hg ci -m second

echo
echo "% cat .hg/store/fncache"
cat .hg/store/fncache

echo
echo "% add a.i.hg/c; ci"
mkdir a.i.hg
echo "yet another text" > a.i.hg/c
hg add
hg ci -m third

echo
echo "% cat .hg/store/fncache"
cat .hg/store/fncache

echo
echo "% hg verify"
hg verify

echo
echo "% rm .hg/store/fncache"
rm .hg/store/fncache

echo
echo "% hg verify"
hg verify

# try non store repo encoding
cd ..
echo % non store repo
hg --config format.usestore=False init foo
cd foo
mkdir tst.d
echo foo > tst.d/foo
hg ci -Amfoo
find .hg | sort

cd ..
echo % non fncache repo
hg --config format.usefncache=False init bar
cd bar
mkdir tst.d
echo foo > tst.d/Foo
hg ci -Amfoo
find .hg | sort

exit 0