]> git.saurik.com Git - apt.git/blobdiff - test/integration/create-test-data
merged from lp:~donkult/apt/sid
[apt.git] / test / integration / create-test-data
index ff94055027e1e9aea35afbffa4c5d14934060af2..effbe1ea35139f463b5aa5c3d7c023235c6b9a71 100755 (executable)
@@ -1,7 +1,12 @@
 #!/bin/sh
 set +e # its okay to fail in these script, most of the time the apt* stuff will generate errors
 
 #!/bin/sh
 set +e # its okay to fail in these script, most of the time the apt* stuff will generate errors
 
-local TESTDIR=$(readlink -f $(dirname $0))
+if [ -z "$1" -o -z "$2" ]; then
+       echo "Usage: $0 file codename pkg…"
+       exit 1
+fi
+
+TESTDIR=$(readlink -f $(dirname $0))
 . $TESTDIR/framework
 BUILDDIRECTORY="${TESTDIR}/../../build/bin"
 
 . $TESTDIR/framework
 BUILDDIRECTORY="${TESTDIR}/../../build/bin"
 
@@ -16,7 +21,12 @@ TMPGEN=$WORKDIR/Packages
 export LANG=C
 
 LISTOFPKGS=$(aptget install $* -t $CODENAME -so Dir::state::status=$WORKDIR/status -o Dir::Cache::archives=$WORKDIR -o pkgCacheGen::Essential=none -o APT::Immediate-Configure=0 2> /dev/null | awk '/^Inst/ {print $2}' | sed -e "s#\$#/$CODENAME#")
 export LANG=C
 
 LISTOFPKGS=$(aptget install $* -t $CODENAME -so Dir::state::status=$WORKDIR/status -o Dir::Cache::archives=$WORKDIR -o pkgCacheGen::Essential=none -o APT::Immediate-Configure=0 2> /dev/null | awk '/^Inst/ {print $2}' | sed -e "s#\$#/$CODENAME#")
-aptcache show $LISTOFPKGS --no-all-versions 2> /dev/null > $TMPGEN
+if [ -z "$LISTOFPKGS" ]; then
+       echo "List of packages is empty: run apt-get install command again for you now"
+       aptget install $* -t $CODENAME -so Dir::state::status=$WORKDIR/status -o Dir::Cache::archives=$WORKDIR -o pkgCacheGen::Essential=none -o APT::Immediate-Configure=0
+       exit 1
+fi
+aptcache show $LISTOFPKGS --no-all-versions 2> $WORKDIR/error.lst > $TMPGEN
 sed -i $TMPGEN \
        -e '/^ / d' \
        -e '/^SHA1: / d' -e '/^SHA256: / d' \
 sed -i $TMPGEN \
        -e '/^ / d' \
        -e '/^SHA1: / d' -e '/^SHA256: / d' \
@@ -24,6 +34,10 @@ sed -i $TMPGEN \
        -e '/^Xul-Appid: / d' \
        -e '/^Status: / d'
 
        -e '/^Xul-Appid: / d' \
        -e '/^Status: / d'
 
+if [ "$CODENAME" = "experimental" ]; then
+       aptcache show $(cat $WORKDIR/error.lst | cut -d"'" -f 4 | sed -e 's#$#/sid#') --no-all-versions 2> /dev/null >> $TMPGEN
+fi
+
 if echo "$GENERATE" | grep '^status-' > /dev/null; then
        sed -i $TMPGEN -e '/^Package: / a\
 Status: install ok installed' \
 if echo "$GENERATE" | grep '^status-' > /dev/null; then
        sed -i $TMPGEN -e '/^Package: / a\
 Status: install ok installed' \