##// END OF EJS Templates
issue1577: fix broken test by assuming less about CVS output....
issue1577: fix broken test by assuming less about CVS output. Specifically, output of "cvs ci" varies unpredictably across CVS versions, so any test that includes the output of "cvs ci" is doomed to fail some of the time. This fixes that by discarding the output of "cvs ci".

File last commit:

r8044:c1e2b740 default
r8081:6c3b8132 default
Show More
test-purge
132 lines | 2.3 KiB | text/plain | TextLexer
Emanuele Aina
Add a test for the purge extension
r4145 #!/bin/sh
cat <<EOF >> $HGRCPATH
[extensions]
Emanuele Aina
Move back the purge extension in hgext
r4311 hgext.purge=
Emanuele Aina
Add a test for the purge extension
r4145 EOF
echo % init
hg init t
cd t
echo % setup
echo r1 > r1
hg ci -qAmr1 -d'0 0'
mkdir directory
echo r2 > directory/r2
hg ci -qAmr2 -d'1 0'
echo 'ignored' > .hgignore
hg ci -qAmr3 -d'2 0'
echo % delete an empty directory
mkdir empty_dir
hg purge -p
hg purge -v
ls
echo % delete an untracked directory
mkdir untracked_dir
touch untracked_dir/untracked_file1
touch untracked_dir/untracked_file2
hg purge -p
hg purge -v
ls
echo % delete an untracked file
touch untracked_file
hg purge -p
hg purge -v
ls
echo % delete an untracked file in a tracked directory
touch directory/untracked_file
hg purge -p
hg purge -v
ls
echo % delete nested directories
mkdir -p untracked_directory/nested_directory
hg purge -p
hg purge -v
ls
Alexis S. L. Carvalho
purge.py: fix invocation of statwalk
r4155 echo % delete nested directories from a subdir
mkdir -p untracked_directory/nested_directory
cd directory
hg purge -p
hg purge -v
cd ..
ls
echo % delete only part of the tree
mkdir -p untracked_directory/nested_directory
touch directory/untracked_file
cd directory
hg purge -p ../untracked_directory
hg purge -v ../untracked_directory
cd ..
ls
ls directory/untracked_file
rm directory/untracked_file
Emanuele Aina
purge: don't delete ignored files if --all is not specified
r4691 echo % skip ignored files if --all not specified
Emanuele Aina
Add a test for the purge extension
r4145 touch ignored
hg purge -p
hg purge -v
ls
Emanuele Aina
purge: don't delete ignored files if --all is not specified
r4691 hg purge -p --all
hg purge -v --all
ls
Emanuele Aina
purge: abort with missing files avoiding problems with name-mangling fs...
r4310
echo % abort with missing files until we support name mangling filesystems
touch untracked_file
rm r1
# hide error messages to avoid changing the output when the text changes
hg purge -p 2> /dev/null
Matt Mackall
purge: cleanup...
r6757 hg st
hg purge -p
Emanuele Aina
purge: abort with missing files avoiding problems with name-mangling fs...
r4310 hg purge -v 2> /dev/null
Matt Mackall
purge: cleanup...
r6757 hg st
hg purge -v
Emanuele Aina
purge: abort with missing files avoiding problems with name-mangling fs...
r4310 hg revert --all --quiet
Matt Mackall
purge: cleanup...
r6757 hg st -a
Emanuele Aina
purge: add --include and --exclude options
r4463
Alexis S. L. Carvalho
purge: simplify safety net for case mangling filesystems...
r5517 echo '% tracked file in ignored directory (issue621)'
echo directory >> .hgignore
hg ci -m 'ignore directory'
touch untracked_file
hg purge -p
hg purge -v
Emanuele Aina
purge: add --include and --exclude options
r4463 echo % skip excluded files
touch excluded_file
hg purge -p -X excluded_file
hg purge -v -X excluded_file
ls
rm excluded_file
echo % skip files in excluded dirs
mkdir excluded_dir
touch excluded_dir/file
hg purge -p -X excluded_dir
hg purge -v -X excluded_dir
ls
ls excluded_dir
rm -R excluded_dir
echo % skip excluded empty dirs
mkdir excluded_dir
hg purge -p -X excluded_dir
hg purge -v -X excluded_dir
ls
rmdir excluded_dir
echo % skip patterns
mkdir .svn
touch .svn/foo
mkdir directory/.svn
touch directory/.svn/foo
hg purge -p -X .svn -X '*/.svn'
hg purge -p -X re:.*.svn