diff options
| author | Tim Kientzle <kientzle@FreeBSD.org> | 2009-03-07 03:30:35 +0000 |
|---|---|---|
| committer | Tim Kientzle <kientzle@FreeBSD.org> | 2009-03-07 03:30:35 +0000 |
| commit | 71938b80a7f414f82b985dfa903da73b817139ba (patch) | |
| tree | d5059a444cacb39328ab0d1b11ea50326a262f9e /lib/libarchive/test/test_read_format_zip.c | |
| parent | 144552f37d883042efdf35b03171afb89a0d860f (diff) | |
Notes
Diffstat (limited to 'lib/libarchive/test/test_read_format_zip.c')
| -rw-r--r-- | lib/libarchive/test/test_read_format_zip.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/libarchive/test/test_read_format_zip.c b/lib/libarchive/test/test_read_format_zip.c index 77d6616181fa..8c7059dec8c1 100644 --- a/lib/libarchive/test/test_read_format_zip.c +++ b/lib/libarchive/test/test_read_format_zip.c @@ -33,7 +33,6 @@ __FBSDID("$FreeBSD$"); DEFINE_TEST(test_read_format_zip) { -#if HAVE_ZLIB_H const char *refname = "test_read_format_zip.zip"; struct archive_entry *ae; struct archive *a; @@ -41,6 +40,7 @@ DEFINE_TEST(test_read_format_zip) const void *pv; size_t s; off_t o; + int r; extract_reference_file(refname); assert((a = archive_read_new()) != NULL); @@ -59,7 +59,16 @@ DEFINE_TEST(test_read_format_zip) assertEqualInt(1179604289, archive_entry_mtime(ae)); assertEqualInt(18, archive_entry_size(ae)); failure("archive_read_data() returns number of bytes read"); - assertEqualInt(18, archive_read_data(a, buff, 19)); + r = archive_read_data(a, buff, 19); + if (r < ARCHIVE_OK) { + if (strcmp(archive_error_string(a), + "libarchive compiled without deflate support (no libz)") == 0) { + skipping("Skipping ZIP compression check: %s", + archive_error_string(a)); + goto finish; + } + } + assertEqualInt(18, r); assert(0 == memcmp(buff, "hello\nhello\nhello\n", 18)); assertA(0 == archive_read_next_header(a, &ae)); assertEqualString("file2", archive_entry_pathname(ae)); @@ -72,15 +81,12 @@ DEFINE_TEST(test_read_format_zip) assertA(archive_compression(a) == ARCHIVE_COMPRESSION_NONE); assertA(archive_format(a) == ARCHIVE_FORMAT_ZIP); assert(0 == archive_read_close(a)); - +finish: #if ARCHIVE_VERSION_NUMBER < 2000000 archive_read_finish(a); #else assert(0 == archive_read_finish(a)); #endif -#else - skipping("Need zlib"); -#endif } |
