]> pd.if.org Git - zpackage/blobdiff - t/install.t
rework zpm-add
[zpackage] / t / install.t
index 3424361ac7928318f0dfa9ceaff02efe198a4287..e9c05aa18d1e94de73580fd07cb81c595b42a4f0 100755 (executable)
@@ -6,7 +6,10 @@
 
 . tap.sh
 
-plan 51
+plan 67
+
+owner=$(id -un)
+group=$(id -gn)
 
 newpkg() {
        pkgid=$1
@@ -15,7 +18,7 @@ newpkg() {
                tryrun zpm newpackage -f $pkgid.zpm $pkgid
                if [ $? -eq 0 ]; then
                        shift
-                       tryrun zpm add -f $pkgid.zpm $pkgid "$@"
+                       tryrun zpm add -u $owner -g $group -f $pkgid.zpm -p $pkgid "$@"
                        return $?
                else
                        skip 1 not adding files init failed
@@ -50,14 +53,14 @@ PF=$pkgid.zpm
 
 #require zpm init $PF
 #require zpm newpackage -f $PF $pkgid
-#require zpm add -f $PF $pkgid /bin/true
+#require zpm add -f $PF -p $pkgid /bin/true
 
 #
-# install via pkgfiles
+# install via syncfs
 #
 require zpm pkg -f $PF $pkgid status=installing
-zpm pkgfiles -d $PF -R. $pkgid 2>&1
-okexit ran pkgfiles
+zpm syncfs -d $PF -R. $pkgid 2>&1 | diagstdin
+okexit ran syncfs
 
 test -f bin/true
 okexit bin/true installed
@@ -75,7 +78,7 @@ require rm -rf bin
 # TODO should probably have merge set the status to merged by default
 
 require zpm init local.db
-zpm install -R. -d local.db -f $PF $pkgid
+zpm install -R. -d local.db -f $PF $pkgid 2>&1 | diagstdin
 #zpm list -f local.db -v | diagstdin
 okexit installed
 ns=$(zpm pkg -f local.db $pkgid status)
@@ -94,7 +97,7 @@ newver=$(zpm pkg -f $PF itest version)
 okstreq "$newver" "2.0" "have updated version"
 
 rm -f test.out
-tryrun zpm add -v -f $PF itest /bin/false
+tryrun zpm add -f $PF -p itest /bin/false
 if [ $? -ne 0 ]; then
        diag h2
        cat test.out | diagstdin
@@ -102,7 +105,7 @@ if [ $? -ne 0 ]; then
        bailout add failed
 fi
 
-zpm install -R. -d local.db -f $PF itest-2.0-1
+zpm install -R. -d local.db -f $PF itest-2.0-1 2>&1 | diagstdin
 okexit installed
 if [ $? -ne 0 ]; then
        cat test.out | diagstdin
@@ -124,7 +127,7 @@ pkgid=itest-3.0-1
 newpkg $pkgid /bin/true
 okexit setup package $pkgid
 PF=$pkgid.zpm
-zpm install -R. -d local.db -f $PF $pkgid | diagstdin
+zpm install -R. -d local.db -f $PF $pkgid 2>&1 | diagstdin
 okexit upgraded to $pkgid
 
 ns=$(zpm pkg -f local.db $pkgid status)
@@ -142,10 +145,27 @@ newpkg $pkgid bin/sh
 okexit setup package $pkgid
 require rm bin/sh
 PF=$pkgid.zpm
-zpm install -v -R. -d local.db -f $PF $pkgid | diagstdin
+zpm install -R. -d local.db -f $PF $pkgid 2>&1 | diagstdin
 okexit installed $pkgid
 oktest -f bin/sh
 
+#
+# update a file
+#
+ohash=$(zpm hash bin/true)
+require mv bin/true bin/save
+require sh -c 'echo false > bin/true'
+nhash=$(zpm hash bin/true)
+pkgid=itest-4.0-1
+newpkg $pkgid bin/true
+okexit setup package $pkgid
+require mv bin/save bin/true
+PF=$pkgid.zpm
+zpm install -R. -d local.db -f $PF $pkgid 2>&1 | diagstdin
+okexit installed $pkgid
+rhash=$(zpm hash bin/true)
+okstreq "$rhash" "$nhash" "updated bin/true"
+
 skiponfail() {
        rv=$?
        if [ $rv -ne 0 ]; then
@@ -162,7 +182,7 @@ pkgid=third-1.0-1
 PF=$pkgid.zpm
 newpkg $pkgid /bin/echo
 skiponfail 3 "can't create $pkgid" || {
-       zpm setscript -f $PF $pkgid pre-install /bin/true
+       zpm script -s -f $PF -p pre-install $pkgid /bin/true
        okexit "add true pre-install script to $pkgid"
        skiponfail 2 "can't set $pkgid pre-install script" || {
                tryrun zpm install -v -R. -d local.db -f $PF $pkgid
@@ -176,9 +196,9 @@ skiponfail 3 "can't create $pkgid" || {
 #
 pkgid=fourth-1.0-1
 PF=$pkgid.zpm
-newpkg $pkgid /bin/printf
+newpkg $pkgid /bin/head
 skiponfail 3 "can't create $pkgid" || {
-       zpm setscript -f $PF $pkgid pre-install /bin/false
+       zpm script -s -f $PF -p pre-install $pkgid /bin/false
        okexit "add false pre-install script to $pkgid"
        skiponfail 1 "can't set $pkgid pre-install script" || {
                zpm install -R. -d local.db -f $PF $pkgid 2>/dev/null
@@ -186,6 +206,18 @@ skiponfail 3 "can't create $pkgid" || {
        }
 }
 
+tryrun zpm uninstall -R. -d local.db third-1.0-1
+test -f bin/echo
+failsok bin/echo removed
+
+pkgid=fifth-1.0-1
+PF=$pkgid.zpm
+newpkg $pkgid /bin/head
+#zpm list -f $PF 2>&1 | diagstdin
+skiponfail 1 "can't create $pkgid" || {
+       tryrun zpm install -R. -d local.db -f $PF 2>/dev/null
+       okexit "install with implicit package id"
+}
 
 cd .. || bailout
 require rm -rf tmp