X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flibpspp%2Fzip.at;h=bcc550457ab718a96f0280427d010a4ec2fd29d0;hb=dd99585d6f83374249fed2337cd1a01bd126f70d;hp=5b21d50f5854791e06b60a6424c069a170da3ddc;hpb=ae01fc907a49e6cf4ceb946b1f02b97a30989fd6;p=pspp diff --git a/tests/libpspp/zip.at b/tests/libpspp/zip.at index 5b21d50f58..bcc550457a 100644 --- a/tests/libpspp/zip.at +++ b/tests/libpspp/zip.at @@ -57,6 +57,29 @@ AT_CHECK([ ]) AT_CLEANUP +AT_SETUP([zip - detect corruption on unzip]) +AT_KEYWORDS([compression]) +mkdir write +cd write +AT_DATA([data.txt], [xyzzy +]) +AT_CHECK([zip-test w ../foo.zip data.txt]) +cd .. + +mkdir extract +cd extract +AT_CHECK([zip-test r ../foo.zip data.txt]) +AT_CHECK([cat data.txt], [0], [xyzzy +]) +cd .. + +mkdir error +cd error +sed 's/xyzzy/XYZZY/' < ../foo.zip > ../corrupted.zip +AT_CHECK([zip-test r ../corrupted.zip data.txt], [1], [], [dnl +Unzip failed: ../corrupted.zip: corrupt archive reading member "data.txt": bad CRC 0x2a2bcd20 (expected e1bd2a6e) +]) +AT_CLEANUP AT_SETUP([zip to pipe]) AT_KEYWORDS([compression])