diff options
author | jmmv <jmmv@FreeBSD.org> | 2014-04-14 13:30:08 +0000 |
---|---|---|
committer | jmmv <jmmv@FreeBSD.org> | 2014-04-14 13:30:08 +0000 |
commit | d9b0a628da4b486dde00400305ad3a2ecefa0205 (patch) | |
tree | 70bd9eedb0e9eac2ac2cd3dcfc26f48adfd1ae7a /tools/regression/lib/libc | |
parent | bd8afe2477108733f19a3171f80f6c8d9daef3bf (diff) | |
download | FreeBSD-src-d9b0a628da4b486dde00400305ad3a2ecefa0205.zip FreeBSD-src-d9b0a628da4b486dde00400305ad3a2ecefa0205.tar.gz |
MFC various fixes to the tools/regression/ tests.
- r262953 Fix m4 tests so that they run cleanly with prove.
- r262954 Fix printf tests so that they run cleanly with prove.
- r262959 Fix sed tests so that they run cleanly with prove.
- r262960 Fix yacc tests so that they run cleanly with prove.
- r262961 Fix pkill tests so that they run cleanly with prove.
- r262962 Fix ncal tests so that they run cleanly with prove.
- r263081 Fix lastcomm tests under amd64.
- r263082 Only run the make tests when make is fmake.
- r263083 Fix sa tests.
- r263084 Turn a test precondition into a skip in the mdconfig tests.
- r263085 Make the strerror tests work without libtap.
- r263087 Remove broken tests for eui64_line.
- r263221 Change etcupdate tests to return 1 on test failures.
- r263352 Make the priv test program exit with non-zero if any failures are detected.
- r263353 errx prepends the program name to the message; don't do it by hand.
- r263362 Include strings.h so that bpf_filter.c can be built in userland.
Diffstat (limited to 'tools/regression/lib/libc')
-rw-r--r-- | tools/regression/lib/libc/net/Makefile | 2 | ||||
-rw-r--r-- | tools/regression/lib/libc/net/test-eui64_line.c | 81 | ||||
-rw-r--r-- | tools/regression/lib/libc/net/test-eui64_line.t | 10 | ||||
-rw-r--r-- | tools/regression/lib/libc/string/Makefile | 4 | ||||
-rw-r--r-- | tools/regression/lib/libc/string/test-strerror.c | 72 |
5 files changed, 43 insertions, 126 deletions
diff --git a/tools/regression/lib/libc/net/Makefile b/tools/regression/lib/libc/net/Makefile index a61741b..4f19edf 100644 --- a/tools/regression/lib/libc/net/Makefile +++ b/tools/regression/lib/libc/net/Makefile @@ -1,6 +1,6 @@ # $FreeBSD$ -TESTS= test-ether test-eui64_aton test-eui64_line test-eui64_ntoa +TESTS= test-ether test-eui64_aton test-eui64_ntoa CFLAGS+= -g -Wall .PHONY: tests diff --git a/tools/regression/lib/libc/net/test-eui64_line.c b/tools/regression/lib/libc/net/test-eui64_line.c deleted file mode 100644 index 714b460..0000000 --- a/tools/regression/lib/libc/net/test-eui64_line.c +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright 2004 The Aerospace Corporation. All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions, and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions, and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. The name of The Aerospace Corporation may not be used to endorse or - * promote products derived from this software. - * - * THIS SOFTWARE IS PROVIDED BY THE AEROSPACE CORPORATION "AS IS" AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AEROSPACE CORPORATION BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - * - * $FreeBSD$ - */ - -#include <sys/types.h> -#include <sys/eui64.h> -#include <stdio.h> -#include <string.h> - -#include "test-eui64.h" - -static int -test_line(const char *line, const struct eui64 *eui, const char *host) -{ - struct eui64 e; - char buf[256]; - static int test = 0; - - test++; - - if (eui64_line(line, &e, buf, sizeof(buf)) != 0 || - memcmp(&e, eui, sizeof(struct eui64)) != 0 || - strcmp(buf, host) != 0) { - printf("not ok %d - eui64_line(\"%s\")\n", test, line); - printf("# host = %s\n", buf); - eui64_ntoa(&e, buf, sizeof(buf)); - printf("# e = %s\n", buf); - return (0); - } else { - printf("ok %d - eui64_line(\"%s\")\n", test, line); - return (1); - } -} - -int -main(int argc, char **argv) -{ - - printf("1..6\n"); - - test_line(test_eui64_line_id, &test_eui64_id, - test_eui64_id_host); - test_line(test_eui64_line_id_colon, &test_eui64_id, - test_eui64_id_host); - test_line(test_eui64_line_eui48, &test_eui64_eui48, - test_eui64_eui48_host); - test_line(test_eui64_line_mac48, &test_eui64_mac48, - test_eui64_mac48_host); - test_line(test_eui64_line_eui48_6byte, &test_eui64_eui48, - test_eui64_eui48_host); - test_line(test_eui64_line_eui48_6byte_c, &test_eui64_eui48, - test_eui64_eui48_host); - - return (0); -} diff --git a/tools/regression/lib/libc/net/test-eui64_line.t b/tools/regression/lib/libc/net/test-eui64_line.t deleted file mode 100644 index 8bdfd03..0000000 --- a/tools/regression/lib/libc/net/test-eui64_line.t +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh -# $FreeBSD$ - -cd `dirname $0` - -executable=`basename $0 .t` - -make $executable 2>&1 > /dev/null - -exec ./$executable diff --git a/tools/regression/lib/libc/string/Makefile b/tools/regression/lib/libc/string/Makefile index 59388b6..2c34ca3 100644 --- a/tools/regression/lib/libc/string/Makefile +++ b/tools/regression/lib/libc/string/Makefile @@ -1,9 +1,5 @@ # $FreeBSD$ -CFLAGS+= -I/usr/local/include -LDFLAGS+= -L/usr/local/lib -LDLIBS= -ltap - TESTS= test-stpncpy test-strerror test-wcscasecmp test-wcsnlen .PHONY: tests diff --git a/tools/regression/lib/libc/string/test-strerror.c b/tools/regression/lib/libc/string/test-strerror.c index ffc1633..84e1b45 100644 --- a/tools/regression/lib/libc/string/test-strerror.c +++ b/tools/regression/lib/libc/string/test-strerror.c @@ -33,7 +33,19 @@ #include <stdlib.h> #include <string.h> -#include <tap.h> +static int test_count = 1; +static int exit_status = EXIT_SUCCESS; + +#define CHECK(x) \ + do { \ + if (x) { \ + printf("ok %d\n", test_count); \ + } else { \ + printf("not ok %d # %s\n", test_count, #x); \ + exit_status = EXIT_FAILURE; \ + } \ + ++test_count; \ + } while (0) int main(void) @@ -42,7 +54,7 @@ main(void) char *sret; int iret; - plan_tests(27); + printf("1..27\n"); /* * strerror() failure tests. @@ -50,86 +62,86 @@ main(void) errno = 0; sret = strerror(INT_MAX); snprintf(buf, sizeof(buf), "Unknown error: %d", INT_MAX); - ok1(strcmp(sret, buf) == 0); - ok1(errno == EINVAL); + CHECK(strcmp(sret, buf) == 0); + CHECK(errno == EINVAL); /* * strerror() success tests. */ errno = 0; sret = strerror(0); - ok1(strcmp(sret, "No error: 0") == 0); - ok1(errno == 0); + CHECK(strcmp(sret, "No error: 0") == 0); + CHECK(errno == 0); errno = 0; sret = strerror(EPERM); - ok1(strcmp(sret, "Operation not permitted") == 0); - ok1(errno == 0); + CHECK(strcmp(sret, "Operation not permitted") == 0); + CHECK(errno == 0); errno = 0; sret = strerror(EPFNOSUPPORT); - ok1(strcmp(sret, "Protocol family not supported") == 0); - ok1(errno == 0); + CHECK(strcmp(sret, "Protocol family not supported") == 0); + CHECK(errno == 0); errno = 0; sret = strerror(ELAST); - ok1(errno == 0); + CHECK(errno == 0); /* * strerror_r() failure tests. */ memset(buf, '*', sizeof(buf)); iret = strerror_r(-1, buf, sizeof(buf)); - ok1(strcmp(buf, "Unknown error: -1") == 0); - ok1(iret == EINVAL); + CHECK(strcmp(buf, "Unknown error: -1") == 0); + CHECK(iret == EINVAL); memset(buf, '*', sizeof(buf)); /* One byte too short. */ iret = strerror_r(EPERM, buf, strlen("Operation not permitted")); - ok1(strcmp(buf, "Operation not permitte") == 0); - ok1(iret == ERANGE); + CHECK(strcmp(buf, "Operation not permitte") == 0); + CHECK(iret == ERANGE); memset(buf, '*', sizeof(buf)); /* One byte too short. */ iret = strerror_r(-1, buf, strlen("Unknown error: -1")); - ok1(strcmp(buf, "Unknown error: -") == 0); - ok1(iret == EINVAL); + CHECK(strcmp(buf, "Unknown error: -") == 0); + CHECK(iret == EINVAL); memset(buf, '*', sizeof(buf)); /* Two bytes too short. */ iret = strerror_r(-2, buf, strlen("Unknown error: -2") - 1); - ok1(strcmp(buf, "Unknown error: ") == 0); - ok1(iret == EINVAL); + CHECK(strcmp(buf, "Unknown error: ") == 0); + CHECK(iret == EINVAL); memset(buf, '*', sizeof(buf)); /* Three bytes too short. */ iret = strerror_r(-2, buf, strlen("Unknown error: -2") - 2); - ok1(strcmp(buf, "Unknown error:") == 0); - ok1(iret == EINVAL); + CHECK(strcmp(buf, "Unknown error:") == 0); + CHECK(iret == EINVAL); memset(buf, '*', sizeof(buf)); /* One byte too short. */ iret = strerror_r(12345, buf, strlen("Unknown error: 12345")); - ok1(strcmp(buf, "Unknown error: 1234") == 0); - ok1(iret == EINVAL); + CHECK(strcmp(buf, "Unknown error: 1234") == 0); + CHECK(iret == EINVAL); /* * strerror_r() success tests. */ memset(buf, '*', sizeof(buf)); iret = strerror_r(0, buf, sizeof(buf)); - ok1(strcmp(buf, "No error: 0") == 0); - ok1(iret == 0); + CHECK(strcmp(buf, "No error: 0") == 0); + CHECK(iret == 0); memset(buf, '*', sizeof(buf)); iret = strerror_r(EDEADLK, buf, sizeof(buf)); - ok1(strcmp(buf, "Resource deadlock avoided") == 0); - ok1(iret == 0); + CHECK(strcmp(buf, "Resource deadlock avoided") == 0); + CHECK(iret == 0); memset(buf, '*', sizeof(buf)); iret = strerror_r(EPROCLIM, buf, sizeof(buf)); - ok1(strcmp(buf, "Too many processes") == 0); - ok1(iret == 0); + CHECK(strcmp(buf, "Too many processes") == 0); + CHECK(iret == 0); - return exit_status(); + return exit_status; } |