view tests/test-git-export @ 3336:e44eadc92ec4

context: check self.__dict__ instead of using hasattr hasattr implicitly calls getattr, instantiating the field it is checking for.
author Brendan Cully <brendan@kublai.com>
date Wed, 11 Oct 2006 13:34:12 -0700
parents 096f1c73cdc3
children 751df21dad72
line wrap: on
line source

#!/bin/sh

hg init a
cd a

echo start > start
hg ci -Amstart -d '0 0'
echo new > new
hg ci -Amnew -d '0 0'
echo '% new file'
hg diff --git -r 0

hg cp new copy
hg ci -mcopy -d '0 0'
echo '% copy'
hg diff --git -r 1:tip

hg mv copy rename
hg ci -mrename -d '0 0'
echo '% rename'
hg diff --git -r 2:tip

hg rm rename
hg ci -mdelete -d '0 0'
echo '% delete'
hg diff --git -r 3:tip

cat > src <<EOF
1
2
3
4
5
EOF
hg ci -Amsrc -d '0 0'
chmod +x src
hg ci -munexec -d '0 0'
echo '% chmod 644'
hg diff --git -r 5:tip

hg mv src dst
chmod -x dst
echo a >> dst
hg ci -mrenamemod -d '0 0'
echo '% rename+mod+chmod'
hg diff --git -r 6:tip

echo '% nonexistent in tip+chmod'
hg diff --git -r 5:6