Make file deletion work, add test

This commit is contained in:
Colin Walters committed 2011-10-15 09:56:31 -04:00
1 parent 05c35f2cf7
commit 2bd973f645
3 files changed
+73 -15

No files matched your search

+12 -3
View File
@@ -33,7 +33,13 @@ die () {
}
assert_has_file () {
test -f $1 || (echo "Couldn't find $1"; exit 1)
test -f "$1" || (echo "Couldn't find '$1'"; exit 1)
}
assert_not_has_file () {
if test -f "$1"; then
echo "File '$1' exists"; exit 1
fi
}
setup_test_repository1 () {
@@ -67,8 +73,11 @@ setup_test_repository2 () {
mkdir baz/another/
echo x > baz/another/y
mkdir ../repo
ht_repo="--repo=../repo"
cd ..
mkdir repo
cd repo
ht_repo="--repo=`pwd`"
cd ../files
export ht_repo
hacktree init $ht_repo
hacktree commit $ht_repo -s "Test Commit 1" -b "Commit body first" --add=firstfile
+40
View File
@@ -0,0 +1,40 @@
#!/bin/bash
#
# Copyright (C) 2011 Colin Walters <walters@verbum.org>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# Author: Colin Walters <walters@verbum.org>
set -e
. libtest.sh
echo '1..4'
setup_test_repository2
hacktree checkout $ht_repo HEAD $test_tmpdir/checkout2-head
echo 'ok setup'
cd $test_tmpdir/checkout2-head
hacktree commit -s delete $ht_repo -r firstfile
echo 'ok rm firstfile'
assert_has_file firstfile # It should still exist in this checkout
cd $test_tmpdir
hacktree checkout $ht_repo HEAD $test_tmpdir/checkout3-head
echo 'ok checkout 3'
cd $test_tmpdir/checkout3-head
assert_not_has_file firstfile
assert_has_file baz/saucer
echo 'ok removal full'