. tap.sh
-plan 8
+plan 13
PF=test.db
pkgid=scriptrunner-1.0-1
+require rm -rf tmp
+require mkdir tmp
+cd tmp 2>/dev/null || bailout "can't cd to tmp"
+
require zpm init $PF
require zpm newpackage -f $PF $pkgid
-tryrun zpm setscript -f $PF scriptrunner-1.0-1 configure /bin/true
-tryrun zpm runscript -f $PF -p configure scriptrunner-1.0-1
-tryrun zpm setscript -f $PF scriptrunner-1.0-1 configure /bin/false
-zpm runscript -f $PF -p configure scriptrunner-1.0-1 2>/dev/null
+tryrun -v zpm script -f $PF -s -p configure scriptrunner-1.0-1 /bin/false
+zpm script -f $PF -p configure -r scriptrunner-1.0-1 2>&1
failsok failure script fails
-zpm runscript -f $PF -p nosuchphase -R scriptrunner-1.0-1 2>/dev/null
+zpm script -f $PF -p nosuchphase -r -F scriptrunner-1.0-1 2>/dev/null
failsok required non-existing script fails
-tryrun zpm runscript -f $PF -p nosuchphase scriptrunner-1.0-1 2>/dev/null
-finish
+cat >script <<-'EOC'
+#!/bin/sh
+echo $1
+EOC
+
+tryrun zpm script -f $PF -s -p configure scriptrunner-1.0-1 script
+
+first=$(zpm script -f $PF -p configure -r -o - scriptrunner-1.0-1)
+okexit first arg script
+okstreq "$first" "scriptrunner-1.0-1" "first arg value"
+
+cat >script <<-'EOC'
+#!/bin/sh
+echo $2
+EOC
+
+tryrun zpm script -s -f $PF scriptrunner-1.0-1 script
+second=$(zpm script -f $PF -p configure -o - scriptrunner-1.0-1 secondarg)
+okexit second arg script
+okstreq "$second" "secondarg" "second arg value"
-rm -f $PF
+cd ..
+rm -rf tmp