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_lzop) 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 lzop compression. */ 20 r = systemf("%s -cf - --lzop f >archive.out 2>archive.err", testprog); 21 p = slurpfile(&s, "archive.err"); 22 p[s] = '\0'; 23 if (r != 0) { 24 if (!canLzop()) { 25 skipping("lzop is not supported on this platform"); 26 goto done; 27 } 28 failure("--lzop option is broken"); 29 assertEqualInt(r, 0); 30 goto done; 31 } 32 free(p); 33 /* Check that the archive file has an lzma signature. */ 34 p = slurpfile(&s, "archive.out"); 35 assert(s > 2); 36 assertEqualMem(p, "\x89\x4c\x5a\x4f\x00\x0d\x0a\x1a\x0a", 9); 37 done: 38 free(p); 39 } 40