diff options
-rw-r--r-- | t/LO-fail/malformed-info/README | 1 | ||||
-rw-r--r-- | t/LO-fail/malformed-info/malformed-info.SlackBuild | 15 | ||||
-rw-r--r-- | t/LO-fail/malformed-info/malformed-info.info | 4 | ||||
-rw-r--r-- | t/LO-fail/malformed-noinfo/README | 1 | ||||
-rw-r--r-- | t/LO-fail/malformed-noinfo/malformed-noinfo.SlackBuild | 15 | ||||
-rw-r--r-- | t/LO-fail/malformed-readme/malformed-readme.SlackBuild | 15 | ||||
-rw-r--r-- | t/LO-fail/malformed-readme/malformed-readme.info | 10 | ||||
-rw-r--r-- | t/LO-fail/malformed-slackbuild/README | 1 | ||||
-rw-r--r-- | t/LO-fail/malformed-slackbuild/malformed-slackbuild.info | 10 | ||||
-rwxr-xr-x | t/fail.t | 27 |
10 files changed, 98 insertions, 1 deletions
diff --git a/t/LO-fail/malformed-info/README b/t/LO-fail/malformed-info/README new file mode 100644 index 0000000..6d388bb --- /dev/null +++ b/t/LO-fail/malformed-info/README @@ -0,0 +1 @@ +This doesn't exist! diff --git a/t/LO-fail/malformed-info/malformed-info.SlackBuild b/t/LO-fail/malformed-info/malformed-info.SlackBuild new file mode 100644 index 0000000..755db2e --- /dev/null +++ b/t/LO-fail/malformed-info/malformed-info.SlackBuild @@ -0,0 +1,15 @@ +#!/bin/bash +PRGNAM="malformed-info" +VERSION=${VERSION:-1.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +TMP=${TMP:-/tmp/SBo} +OUTPUT=${OUTPUT:-/tmp} + +mkdir -p $TMP/$PRGNAM-$VERSION +cp README $TMP/$PRGNAM-$VERSION +mkdir -p $OUTPUT/package-$PRGNAM/usr/doc/$PRGNAM-$VERSION +cp README $OUTPUT/package-$PRGNAM/usr/doc/$PRGNAM-$VERSION +cd $OUTPUT/package-$PRGNAM + +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-noarch-$BUILD$TAG.tgz diff --git a/t/LO-fail/malformed-info/malformed-info.info b/t/LO-fail/malformed-info/malformed-info.info new file mode 100644 index 0000000..d6aa202 --- /dev/null +++ b/t/LO-fail/malformed-info/malformed-info.info @@ -0,0 +1,4 @@ +PRGNAM="malformed-info" +VERSION="1.0" +MAINTAINER="Andreas Guldstrand" +EMAIL="doesnt@matter.org" diff --git a/t/LO-fail/malformed-noinfo/README b/t/LO-fail/malformed-noinfo/README new file mode 100644 index 0000000..6d388bb --- /dev/null +++ b/t/LO-fail/malformed-noinfo/README @@ -0,0 +1 @@ +This doesn't exist! diff --git a/t/LO-fail/malformed-noinfo/malformed-noinfo.SlackBuild b/t/LO-fail/malformed-noinfo/malformed-noinfo.SlackBuild new file mode 100644 index 0000000..e586357 --- /dev/null +++ b/t/LO-fail/malformed-noinfo/malformed-noinfo.SlackBuild @@ -0,0 +1,15 @@ +#!/bin/bash +PRGNAM="malformed-noinfo" +VERSION=${VERSION:-1.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +TMP=${TMP:-/tmp/SBo} +OUTPUT=${OUTPUT:-/tmp} + +mkdir -p $TMP/$PRGNAM-$VERSION +cp README $TMP/$PRGNAM-$VERSION +mkdir -p $OUTPUT/package-$PRGNAM/usr/doc/$PRGNAM-$VERSION +cp README $OUTPUT/package-$PRGNAM/usr/doc/$PRGNAM-$VERSION +cd $OUTPUT/package-$PRGNAM + +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-noarch-$BUILD$TAG.tgz diff --git a/t/LO-fail/malformed-readme/malformed-readme.SlackBuild b/t/LO-fail/malformed-readme/malformed-readme.SlackBuild new file mode 100644 index 0000000..04345e3 --- /dev/null +++ b/t/LO-fail/malformed-readme/malformed-readme.SlackBuild @@ -0,0 +1,15 @@ +#!/bin/bash +PRGNAM="malformed-readme" +VERSION=${VERSION:-1.0} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +TMP=${TMP:-/tmp/SBo} +OUTPUT=${OUTPUT:-/tmp} + +mkdir -p $TMP/$PRGNAM-$VERSION +cp README $TMP/$PRGNAM-$VERSION +mkdir -p $OUTPUT/package-$PRGNAM/usr/doc/$PRGNAM-$VERSION +cp README $OUTPUT/package-$PRGNAM/usr/doc/$PRGNAM-$VERSION +cd $OUTPUT/package-$PRGNAM + +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-noarch-$BUILD$TAG.tgz diff --git a/t/LO-fail/malformed-readme/malformed-readme.info b/t/LO-fail/malformed-readme/malformed-readme.info new file mode 100644 index 0000000..ae1d2ff --- /dev/null +++ b/t/LO-fail/malformed-readme/malformed-readme.info @@ -0,0 +1,10 @@ +PRGNAM="malformed-readme" +VERSION="1.0" +HOMEPAGE="http://www.example.com" +DOWNLOAD="http://www.pastemobile.org/perf.dummy" +MD5SUM="9cba6c70fb57a22a155073d54748b614" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="Andreas Guldstrand" +EMAIL="doesnt@matter.org" diff --git a/t/LO-fail/malformed-slackbuild/README b/t/LO-fail/malformed-slackbuild/README new file mode 100644 index 0000000..6d388bb --- /dev/null +++ b/t/LO-fail/malformed-slackbuild/README @@ -0,0 +1 @@ +This doesn't exist! diff --git a/t/LO-fail/malformed-slackbuild/malformed-slackbuild.info b/t/LO-fail/malformed-slackbuild/malformed-slackbuild.info new file mode 100644 index 0000000..470b755 --- /dev/null +++ b/t/LO-fail/malformed-slackbuild/malformed-slackbuild.info @@ -0,0 +1,10 @@ +PRGNAM="malformed-slackbuild" +VERSION="1.0" +HOMEPAGE="http://www.example.com" +DOWNLOAD="http://www.pastemobile.org/perf.dummy" +MD5SUM="9cba6c70fb57a22a155073d54748b614" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="Andreas Guldstrand" +EMAIL="doesnt@matter.org" @@ -11,7 +11,7 @@ use lib "$RealBin/../SBO-Lib/lib"; use Test::Execute; if ($ENV{TEST_INSTALL}) { - plan tests => 9; + plan tests => 13; } else { plan skip_all => 'Only run these tests if TEST_INSTALL=1'; } @@ -31,6 +31,10 @@ sub cleanup { unlink "$RealBin/LO-fail/nonexistentslackbuild2/perf.dummy"; unlink "$RealBin/LO-fail/nonexistentslackbuild3/perf.dummy"; unlink "$RealBin/LO-fail/nonexistentslackbuild4/perf.dummy"; + unlink "$RealBin/LO-fail/malformed-noinfo/perf.dummy"; + unlink "$RealBin/LO-fail/malformed-info/perf.dummy"; + unlink "$RealBin/LO-fail/malformed-readme/perf.dummy"; + unlink "$RealBin/LO-fail/malformed-slackbuild/perf.dummy"; system(qw!rm -rf /tmp/SBo/failingslackbuild-1.0!); system(qw!rm -rf /tmp/SBo/failingslackbuild2-1.0!); system(qw!rm -rf /tmp/SBo/failingdownload-1.0!); @@ -41,6 +45,10 @@ sub cleanup { system(qw!rm -rf /tmp/SBo/nonexistentslackbuild2-1.0!); system(qw!rm -rf /tmp/SBo/nonexistentslackbuild3-1.0!); system(qw!rm -rf /tmp/SBo/nonexistentslackbuild4-1.0!); + system(qw!rm -rf /tmp/SBo/malformed-noinfo-1.0!); + system(qw!rm -rf /tmp/SBo/malformed-info-1.0!); + system(qw!rm -rf /tmp/SBo/malformed-readme-1.0!); + system(qw!rm -rf /tmp/SBo/malformed-slackbuild-1.0!); system(qw!rm -rf /tmp/package-failingslackbuild!); system(qw!rm -rf /tmp/package-failingslackbuild2!); system(qw!rm -rf /tmp/package-failingdownload!); @@ -51,6 +59,10 @@ sub cleanup { system(qw!rm -rf /tmp/package-nonexistentslackbuild2!); system(qw!rm -rf /tmp/package-nonexistentslackbuild3!); system(qw!rm -rf /tmp/package-nonexistentslackbuild4!); + system(qw!rm -rf /tmp/package-malformed-noinfo!); + system(qw!rm -rf /tmp/package-malformed-info!); + system(qw!rm -rf /tmp/package-malformed-readme!); + system(qw!rm -rf /tmp/package-malformed-slackbuild!); }; } @@ -116,6 +128,19 @@ SKIP: { script (qw/ sboinstall failingmd5sum2 /, { input => "y\ny\ny\nn", expected => qr!Failures:\n!, exit => 4 }); } +# 10: Malformed slackbuild - no .info +script (qw/ sboinstall malformed-noinfo /, { expected => "A fatal script error has occurred:\nopen_fh, $RealBin/LO-fail/malformed-noinfo/malformed-noinfo.info is not a file\nExiting.\n", exit => 2 }); + +# 11: Malformed slackbuild - malformed .info +script (qw/ sboinstall malformed-info /, { input => "y\ny\nn", expected => qr!Failures:\n malformed-info: Unable to get download info from $RealBin/LO-fail/malformed-info/malformed-info[.]info\n!, exit => 7 }); + +# 12: Malformed slackbuild - no readme +script (qw/ sboinstall malformed-readme /, { expected => "A fatal script error has occurred:\nopen_fh, $RealBin/LO-fail/malformed-readme/README is not a file\nExiting.\n", exit => 2 }); + +# 13: Malformed slackbuild - no .SlackBuild +script (qw/ sboinstall malformed-slackbuild /, + { input => "y\ny", expected => qr!\QFailures:\n malformed-slackbuild: Unable to backup $RealBin/LO-fail/malformed-slackbuild/malformed-slackbuild.SlackBuild to $RealBin/LO-fail/malformed-slackbuild/malformed-slackbuild.SlackBuild.orig\E!, exit => 6 }); + # Cleanup END { set_lo('delete'); |