Deleted Added
full compact
test_0.c (228763) test_0.c (232153)
1/*-
2 * Copyright (c) 2003-2007 Tim Kientzle
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */
25#include "test.h"
1/*-
2 * Copyright (c) 2003-2007 Tim Kientzle
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions
7 * are met:
8 * 1. Redistributions of source code must retain the above copyright

--- 9 unchanged lines hidden (view full) ---

18 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 */
25#include "test.h"
26__FBSDID("$FreeBSD: head/contrib/libarchive/cpio/test/test_0.c 228763 2011-12-21 11:13:29Z mm $");
26__FBSDID("$FreeBSD: head/contrib/libarchive/cpio/test/test_0.c 232153 2012-02-25 10:58:02Z mm $");
27
28/*
29 * This first test does basic sanity checks on the environment. For
30 * most of these, we just exit on failure.
31 */
32#if !defined(_WIN32) || defined(__CYGWIN__)
33#define DEV_NULL "/dev/null"
34#else
35#define DEV_NULL "NUL"
36#endif
37
38DEFINE_TEST(test_0)
39{
40 struct stat st;
41
42 failure("File %s does not exist?!", testprogfile);
27
28/*
29 * This first test does basic sanity checks on the environment. For
30 * most of these, we just exit on failure.
31 */
32#if !defined(_WIN32) || defined(__CYGWIN__)
33#define DEV_NULL "/dev/null"
34#else
35#define DEV_NULL "NUL"
36#endif
37
38DEFINE_TEST(test_0)
39{
40 struct stat st;
41
42 failure("File %s does not exist?!", testprogfile);
43 if (!assertEqualInt(0, stat(testprogfile, &st)))
43 if (!assertEqualInt(0, stat(testprogfile, &st))) {
44 fprintf(stderr,
45 "\nFile %s does not exist; aborting test.\n\n",
46 testprog);
44 exit(1);
47 exit(1);
48 }
45
46 failure("%s is not executable?!", testprogfile);
49
50 failure("%s is not executable?!", testprogfile);
47 if (!assert((st.st_mode & 0111) != 0))
51 if (!assert((st.st_mode & 0111) != 0)) {
52 fprintf(stderr,
53 "\nFile %s not executable; aborting test.\n\n",
54 testprog);
48 exit(1);
55 exit(1);
56 }
49
50 /*
57
58 /*
51 * Try to succesfully run the program; this requires that
59 * Try to successfully run the program; this requires that
52 * we know some option that will succeed.
53 */
54 if (0 == systemf("%s --version >" DEV_NULL, testprog)) {
55 /* This worked. */
56 } else if (0 == systemf("%s -W version >" DEV_NULL, testprog)) {
57 /* This worked. */
58 } else {
59 failure("Unable to successfully run any of the following:\n"
60 " * %s --version\n"
61 " * %s -W version\n",
62 testprog, testprog);
63 assert(0);
64 }
65
66 /* TODO: Ensure that our reference files are available. */
67}
60 * we know some option that will succeed.
61 */
62 if (0 == systemf("%s --version >" DEV_NULL, testprog)) {
63 /* This worked. */
64 } else if (0 == systemf("%s -W version >" DEV_NULL, testprog)) {
65 /* This worked. */
66 } else {
67 failure("Unable to successfully run any of the following:\n"
68 " * %s --version\n"
69 " * %s -W version\n",
70 testprog, testprog);
71 assert(0);
72 }
73
74 /* TODO: Ensure that our reference files are available. */
75}