]> git.saurik.com Git - apt.git/blobdiff - test/integration/framework
tests: check apt-get source release name switching with -t
[apt.git] / test / integration / framework
index 2f08c5fdcb08e7f6f8c9c5280f200af1f6b748a6..d9282eedeac118ad3aa42ac3bb02f1d4b37c9a14 100644 (file)
@@ -794,6 +794,7 @@ insertsource() {
        local ARCH="$3"
        local VERSION="$4"
        local DEPENDENCIES="$5"
+        local BINARY="${6:-$NAME}"
        local ARCHS=""
        local SPATH="aptarchive/dists/${RELEASE}/main/source"
        mkdir -p $SPATH
@@ -801,7 +802,7 @@ insertsource() {
        local DSCFILE="${NAME}_${VERSION}.dsc"
        local TARFILE="${NAME}_${VERSION}.tar.gz"
        echo "Package: $NAME
-Binary: $NAME
+Binary: $BINARY
 Version: $VERSION
 Maintainer: Joe Sixpack <joe@example.org>
 Architecture: $ARCH" >> $FILE
@@ -1324,6 +1325,17 @@ testmarkedauto() {
        fi
        aptmark showauto 2>&1 | checkdiff $COMPAREFILE - && msgpass || msgfail
 }
+testmarkedmanual() {
+       local COMPAREFILE="${TMPWORKINGDIRECTORY}/rootdir/tmp/testmarkedmanual.comparefile"
+       if [ -n "$1" ]; then
+               msgtest 'Test for correctly marked as manually installed' "$*"
+               while [ -n "$1" ]; do echo "$1"; shift; done | sort > $COMPAREFILE
+       else
+               msgtest 'Test for correctly marked as manually installed' 'no package'
+               echo -n > $COMPAREFILE
+       fi
+       aptmark showmanual 2>&1 | checkdiff $COMPAREFILE - && msgpass || msgfail
+}
 
 msgfailoutput() {
        local MSG="$1"
@@ -1366,8 +1378,17 @@ testsuccess() {
                if expr match "$1" '^apt.*' >/dev/null; then
                        if grep -q -E ' runtime error: ' "$OUTPUT"; then
                                msgfailoutput 'compiler detected undefined behavior' "$OUTPUT" "$@"
-                       elif grep -q -E '^[WE]: ' "$OUTPUT"; then
-                               msgfailoutput 'successful run, but output contains warnings/errors' "$OUTPUT" "$@"
+                       elif grep -E '^[WE]: ' "$OUTPUT" > "${TMPWORKINGDIRECTORY}/rootdir/tmp/checkforwarnings.output" 2>&1; then
+                               if [ "$IGNORE_PTY_NOT_MOUNTED" = '1' ]; then
+                                       if echo 'E: Can not write log (Is /dev/pts mounted?) - posix_openpt (2: No such file or directory)' \
+                                               | cmp - "${TMPWORKINGDIRECTORY}/rootdir/tmp/checkforwarnings.output" >/dev/null 2>&1; then
+                                               msgpass
+                                       else
+                                               msgfailoutput 'successful run, but output contains warnings/errors' "$OUTPUT" "$@"
+                                       fi
+                               else
+                                       msgfailoutput 'successful run, but output contains warnings/errors' "$OUTPUT" "$@"
+                               fi
                        else
                                msgpass
                        fi