xref: /freebsd/contrib/libarchive/tar/test/test_extract_tar_lz4.c (revision bd66c1b43e33540205dbc1187c2f2a15c58b57ba)
1cdf63a70SMartin Matuska /*-
2*bd66c1b4SMartin Matuska  * SPDX-License-Identifier: BSD-2-Clause
3*bd66c1b4SMartin Matuska  *
4cdf63a70SMartin Matuska  * Copyright (c) 2012,2014 Michihiro NAKAJIMA
5cdf63a70SMartin Matuska  * All rights reserved.
6cdf63a70SMartin Matuska  */
7cdf63a70SMartin Matuska #include "test.h"
8cdf63a70SMartin Matuska 
DEFINE_TEST(test_extract_tar_lz4)9cdf63a70SMartin Matuska DEFINE_TEST(test_extract_tar_lz4)
10cdf63a70SMartin Matuska {
11cdf63a70SMartin Matuska 	const char *reffile = "test_extract.tar.lz4";
12cdf63a70SMartin Matuska 	int f;
13cdf63a70SMartin Matuska 
14cdf63a70SMartin Matuska 	extract_reference_file(reffile);
15cdf63a70SMartin Matuska 	f = systemf("%s -tf %s >test.out 2>test.err", testprog, reffile);
16cdf63a70SMartin Matuska 	if (f == 0 || canLz4()) {
17cdf63a70SMartin Matuska 		assertEqualInt(0, systemf("%s -xf %s >test.out 2>test.err",
18cdf63a70SMartin Matuska 		    testprog, reffile));
19cdf63a70SMartin Matuska 
20cdf63a70SMartin Matuska 		assertFileExists("file1");
21cdf63a70SMartin Matuska 		assertTextFileContents("contents of file1.\n", "file1");
22cdf63a70SMartin Matuska 		assertFileExists("file2");
23cdf63a70SMartin Matuska 		assertTextFileContents("contents of file2.\n", "file2");
24cdf63a70SMartin Matuska 		assertEmptyFile("test.out");
25cdf63a70SMartin Matuska 		assertEmptyFile("test.err");
26cdf63a70SMartin Matuska 	} else {
27cdf63a70SMartin Matuska 		skipping("It seems lz4 is not supported on this platform");
28cdf63a70SMartin Matuska 	}
29cdf63a70SMartin Matuska }
30