PF=test.db
-plan 22
+plan 32
require rm -rf tmp
require mkdir tmp
okexit 'making foo'
pkgid=zpmtest-1.0-1
+PF=zpmtest-1.0-1.zpm
require zpm newpackage -C $pkgid
require zpm add $pkgid foo
okstreq "$4" "foo" file foo in package
diag "$pkglist"
-rm -f zpmtest-1.0-1.zpm
-
rm -f $PF
require zpm newpackage -f $PF -C $pkgid
require zpm add -f $PF zpmtest foo
okstreq "$fn" "foo" file foo in package prefix striped
rm -f $PF
+require zpm newpackage -f $PF -C $pkgid
+require zpm add -f $PF zpmtest foo
+ph=$(zpm pkg -f $PF zpmtest hash)
+okstreq "$ph" "" package hash empty
+mtime=$(zpm pkg -f $PF zpmtest build_time)
+okstreq "$ph" "" package mtime empty
+
+zpm add -C -f $PF zpmtest subdir/foo
+okexit added file and completed package
+ph=$(zpm pkg -f $PF zpmtest hash)
+test -n "$ph"
+okexit package hash not empty
+diag "hash: $ph"
+mtime=$(zpm pkg -f $PF zpmtest build_time)
+test -n "$mtime"
+okexit package mtime not empty
+
+touch subdir/bar
+require zpm add -f $PF zpmtest subdir/bar
+ph=$(zpm pkg -f $PF zpmtest hash)
+okstreq "$ph" "" package hash cleared
+mtime=$(zpm pkg -f $PF zpmtest build_time)
+okstreq "$ph" "" package mtime cleared
+
+
finish
cd ..
tags=
isconfig=0
addcontent=1
+complete=0
# option for "multipackage" just to let the system know that's what you meant
# option to take filenames from stdin
# parse package, version, release from file if not given
# TODO -l follow symlinks, -L follow symlinks, adding all, links and targets
-while getopts :f:vr:l:P:S:cu:g:N opt; do
+while getopts :f:vr:l:P:S:cu:g:NC opt; do
case $opt in
N) addcontent=0 ;;
f) pkgfile="$OPTARG" ;;
u) username="$OPTARG" ;;
g) groupname="$OPTARG" ;;
v) verbose=1 ;;
+ C) complete=1 ;;
*) echo 'unknown option' $OPTARG; exit 1 ;;
esac
done
fi
done
+
+if [ $complete -eq 1 ]; then
+ zpm pkg -f $pkgfile $pkgid build_time=$(date +'%s')
+ zpm packagehash -f $pkgfile -s -q $pkgid
+else
+ zpm pkg -f $pkgfile $pkgid hash=
+fi