summaryrefslogtreecommitdiff
path: root/test/addremove
diff options
context:
space:
mode:
Diffstat (limited to 'test/addremove')
-rw-r--r--test/addremove48
1 files changed, 48 insertions, 0 deletions
diff --git a/test/addremove b/test/addremove
new file mode 100644
index 0000000..23196e1
--- /dev/null
+++ b/test/addremove
@@ -0,0 +1,48 @@
+## vim:ft=zsh
+file=${repo%-*}
+if [[ $repo == *-bare ]] {
+ echo "## bare repository"
+ complement=$file
+} else {
+ echo "## non-bare repository"
+ complement=${repo}-bare
+}
+echo "# pkg add (ok)"
+pkg add $repo
+[[ -e $test_pdir/$repo/foo ]]
+[[ -d $test_pdir/$repo/.git ]]
+
+echo "# pkg add (already installed)"
+! pkg add $repo
+
+echo "# populate_collected"
+[[ -L $test_home/bin/$file ]]
+[[ -x $(readlink $test_home/bin/$file) ]]
+[[ -e $test_pdir/.collected/man/man2/$file.2 ]]
+
+repeat 2 {
+ echo "# pkg list"
+ stringcmp "core\n$repo" "$(pkg list local)"
+ stringcmp "$complement\nrb\nrb-bare\nrc\nrc-bare" "$(pkg list not-installed)"
+ stringcmp "core\nra\nra-bare\nrb\nrb-bare\nrc\nrc-bare" "$(pkg list remote)"
+ pkg update
+}
+
+echo "# pkg remove (not installed/nonexistent)"
+! pkg remove suckage
+! pkg remove rb
+
+echo "# pkg remove (ok)"
+pkg remove $repo
+
+echo "# genocide_collected (~/bin)"
+[[ ! -L $test_home/bin/$file ]]
+[[ ! -e $test_pdir/.collected/man/man2/$file.2 ]]
+
+repeat 2 {
+ echo "# pkg list"
+ stringcmp "core" "$(pkg list local)"
+ stringcmp "ra\nra-bare\nrb\nrb-bare\nrc\nrc-bare" "$(pkg list not-installed)"
+ stringcmp "core\nra\nra-bare\nrb\nrb-bare\nrc\nrc-bare" "$(pkg list remote)"
+ pkg update
+}