1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 3 * 4 * Copyright (c) 2003-2007 Tim Kientzle 5 * Copyright (c) 2012 Michihiro NAKAJIMA 6 * All rights reserved. 7 */ 8 #include "test.h" 9 10 DEFINE_TEST(test_option_z) 11 { 12 char *p; 13 int r; 14 size_t s; 15 16 /* Create a file. */ 17 assertMakeFile("f", 0644, "a"); 18 19 /* Archive it with gzip compression. */ 20 r = systemf("%s -zcf archive.out f 2>archive.err", testprog); 21 p = slurpfile(&s, "archive.err"); 22 p[s] = '\0'; 23 if (r != 0) { 24 if (!canGzip()) { 25 skipping("gzip is not supported on this platform"); 26 goto done; 27 } 28 failure("-z option is broken"); 29 assertEqualInt(r, 0); 30 goto done; 31 } 32 free(p); 33 /* Check that the archive file has a gzip signature. */ 34 p = slurpfile(&s, "archive.out"); 35 assert(s > 4); 36 assertEqualMem(p, "\x1f\x8b\x08\x00", 4); 37 done: 38 free(p); 39 } 40