summaryrefslogtreecommitdiff
path: root/regress
diff options
context:
space:
mode:
authorMarc Espie <espie@cvs.openbsd.org>2009-12-11 20:57:46 +0000
committerMarc Espie <espie@cvs.openbsd.org>2009-12-11 20:57:46 +0000
commitcb8bc2f75993d068c5594621b46dab43a5a26c5b (patch)
tree8e263b43e45c0c0b6479ece18433d489dda8c866 /regress
parent3a5d4ff66964274d86b113bb23a86be90553bef8 (diff)
sample case we fail (kili/edd): if updatesets contain "self" dependencies,
they should install/uninstall in the correct order to be able to handle any @exec activity...
Diffstat (limited to 'regress')
-rw-r--r--regress/usr.sbin/pkg_add/Makefile34
-rw-r--r--regress/usr.sbin/pkg_add/list6.out8
2 files changed, 40 insertions, 2 deletions
diff --git a/regress/usr.sbin/pkg_add/Makefile b/regress/usr.sbin/pkg_add/Makefile
index ee7fa5e8b28..efdc6b01720 100644
--- a/regress/usr.sbin/pkg_add/Makefile
+++ b/regress/usr.sbin/pkg_add/Makefile
@@ -1,8 +1,8 @@
-# $OpenBSD: Makefile,v 1.20 2009/12/11 13:02:59 espie Exp $
+# $OpenBSD: Makefile,v 1.21 2009/12/11 20:57:45 espie Exp $
REGRESS_TARGETS=pkgnames depends-check longnames always-update \
collision-check3 partial-update-test conflict-update \
- merge-update split-update
+ merge-update split-update big-merge
PKG_ADD=perl ${.CURDIR}/myadd
PKG_CREATE=perl ${.CURDIR}/mycreate
@@ -102,6 +102,13 @@ split-update: old/o-0.0.tgz new/o-1.0.tgz new/p-0.0.tgz
ROOT=${D13} PKG_PATH=${.OBJDIR}/new ${PKG_ADD} -u o
PKG_DBDIR=${D13}/pkgdb pkg_info -q |diff - ${.CURDIR}/list5.out
+big-merge: old/q1-0.0.tgz old/q2-0.0.tgz old/q3-0.0.tgz old/q4-0.0.tgz \
+ new/q1-1.0.tgz new/q2-1.0.tgz new/q3-1.0.tgz new/q4-1.0.tgz
+ -rm -rf ${D14}
+ ROOT=${D14} PKG_PATH=${.OBJDIR}/old ${PKG_ADD} q1 q2 q3 q4
+ ROOT=${D14} PKG_PATH=${.OBJDIR}/new ${PKG_ADD} -F update -u q1 q2 q3 q4 2>&1|fgrep XXX|fgrep -v @|diff - ${.CURDIR}/list6.out
+
+
plist1:
@echo "@owner "`whoami` >$@
@echo ${LONG1} >>$@
@@ -210,6 +217,29 @@ old/h-0.0.tgz:
new/h-1.0.tgz:
${PKG_CREATE} -P'test/j:j->=1:j-1.0' -f ${.CURDIR}/empty $@
+depend_q1=
+depend_q2=-P'test/q1:q1-*:q1-0.0'
+depend_q3=-P'test/q2:q2-*:q2-0.0'
+depend_q4=-P'test/q3:q3-*:q3-0.0'
+
+.for n in q1 q2 q3 q4
+plist-old-$n:
+ @echo "@unexec echo 1>&2 'XXXold $n'" >$@
+
+old/$n-0.0.tgz: plist-old-$n
+ ${PKG_CREATE} ${depend_$n} -f plist-old-$n $@
+new/$n-1.0.tgz: plist-new-$n
+ ${PKG_CREATE} ${depend_$n} -f plist-new-$n $@
+
+plist-new-$n:
+ @echo "@conflict q1-0.0" >$@
+ @echo "@conflict q2-0.0" >>$@
+ @echo "@conflict q3-0.0" >>$@
+ @echo "@conflict q4-0.0" >>$@
+ @echo "@exec echo 1>&2 'XXXnew $n'" >>$@
+
+.endfor
+
# some extra tests do not yet pass correctly
.PHONY: ${REGRESS_TARGETS} \
diff --git a/regress/usr.sbin/pkg_add/list6.out b/regress/usr.sbin/pkg_add/list6.out
new file mode 100644
index 00000000000..813cc14bb23
--- /dev/null
+++ b/regress/usr.sbin/pkg_add/list6.out
@@ -0,0 +1,8 @@
+XXXold q4
+XXXold q3
+XXXold q2
+XXXold q1
+XXXnew q1
+XXXnew q2
+XXXnew q3
+XXXnew q4