view tests/test-merge-closedheads @ 11765:aff419e260f9 stable

templatefilters: make json filter handle multibyte characters correctly It aims to fix javascript error of hgweb's graph view in Japanese 'cp932' encoding. 'cp932' contains multibyte characters ending with '\x5c' (backslash), e.g. '\x94\x5c' for Japanese Kanji 'Noh'. Due to json filter escapes '\' to '\\', multibyte string ending with '\x5c' is translated to "xxx\", resulting javascript parse error on a web browser. This patch changes json() to pass unicode to jsonescape(). Unicode decoding error handler changed to 'replace' by Patrick Mézard.
author Yuya Nishihara <yuya@tcha.org>
date Sat, 07 Aug 2010 16:27:16 +0900
parents ee876e42dd74
children
line wrap: on
line source

#!/bin/sh

hgcommit() {
    hg commit -u user -d '0 0' "$@"
}

hg init clhead
cd clhead


touch foo && hg add && hgcommit -m 'foo'
touch bar && hg add && hgcommit -m 'bar'
touch baz && hg add && hgcommit -m 'baz'

echo "flub" > foo
hgcommit -m "flub"
echo "nub" > foo
hgcommit -m "nub"

hg up -C 2

echo "c1" > c1
hg add c1
hgcommit -m "c1"
echo "c2" > c1
hgcommit -m "c2"

hg up -C 2

echo "d1" > d1
hg add d1
hgcommit -m "d1"
echo "d2" > d1
hgcommit -m "d2"
hg tag -l good

echo '% fail with three heads'
hg up -C good
hg merge

echo '% close one of the heads'
hg up -C 6
hgcommit -m 'close this head' --close-branch

echo '% succeed with two open heads'
hg up -C good
hg up -C good
hg merge
hgcommit -m 'merged heads'

echo '% hg update -C 8'
hg update -C 8

echo '% hg branch some-branch'
hg branch some-branch
echo '% hg commit'
hgcommit -m 'started some-branch'
echo '% hg commit --close-branch'
hgcommit --close-branch -m 'closed some-branch'

echo '% hg update default'
hg update default
echo '% hg merge some-branch'
hg merge some-branch
echo '% hg commit (no reopening of some-branch)'
hgcommit -m 'merge with closed branch'

cat >> $HGRCPATH <<EOF
[extensions]
graphlog =
EOF

#hg glog