svn commit: r290532 - in head: lib/libc/tests/locale tools/regression/lib/libc/locale
Garrett Cooper
ngie at FreeBSD.org
Sun Nov 8 02:06:19 UTC 2015
Author: ngie
Date: Sun Nov 8 02:06:17 2015
New Revision: 290532
URL: https://svnweb.freebsd.org/changeset/base/290532
Log:
Integrate tools/regression/lib/libc/locale into the FreeBSD test suite
as lib/libc/tests/locale
MFC after: 1 week
Sponsored by: EMC / Isilon Storage Division
Added:
head/lib/libc/tests/locale/btowc_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-btowc.c
head/lib/libc/tests/locale/c16rtomb_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-c16rtomb.c
head/lib/libc/tests/locale/iswctype_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-iswctype.c
head/lib/libc/tests/locale/mblen_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mblen.c
head/lib/libc/tests/locale/mbrlen_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mbrlen.c
head/lib/libc/tests/locale/mbrtoc16_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mbrtoc16.c
head/lib/libc/tests/locale/mbrtowc_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mbrtowc.c
head/lib/libc/tests/locale/mbsnrtowcs_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mbsnrtowcs.c
head/lib/libc/tests/locale/mbsrtowcs_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mbsrtowcs.c
head/lib/libc/tests/locale/mbstowcs_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mbstowcs.c
head/lib/libc/tests/locale/mbtowc_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-mbtowc.c
head/lib/libc/tests/locale/towctrans_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-towctrans.c
head/lib/libc/tests/locale/wcrtomb_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-wcrtomb.c
head/lib/libc/tests/locale/wcsnrtombs_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-wcsnrtombs.c
head/lib/libc/tests/locale/wcsrtombs_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-wcsrtombs.c
head/lib/libc/tests/locale/wcstombs_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-wcstombs.c
head/lib/libc/tests/locale/wctomb_test.c
- copied, changed from r290531, head/tools/regression/lib/libc/locale/test-wctomb.c
Deleted:
head/tools/regression/lib/libc/locale/
Modified:
head/lib/libc/tests/locale/Makefile
Modified: head/lib/libc/tests/locale/Makefile
==============================================================================
--- head/lib/libc/tests/locale/Makefile Sun Nov 8 01:41:44 2015 (r290531)
+++ head/lib/libc/tests/locale/Makefile Sun Nov 8 02:06:17 2015 (r290532)
@@ -2,6 +2,24 @@
.include <bsd.own.mk>
+ATF_TESTS_C+= btowc_test
+ATF_TESTS_C+= c16rtomb_test
+ATF_TESTS_C+= iswctype_test
+ATF_TESTS_C+= mblen_test
+ATF_TESTS_C+= mbrlen_test
+ATF_TESTS_C+= mbrtoc16_test
+ATF_TESTS_C+= mbrtowc_2_test
+ATF_TESTS_C+= mbsnrtowcs_2_test
+ATF_TESTS_C+= mbsrtowcs_test
+ATF_TESTS_C+= mbstowcs_2_test
+ATF_TESTS_C+= mbtowc_2_test
+ATF_TESTS_C+= towctrans_test
+ATF_TESTS_C+= wcrtomb_test
+ATF_TESTS_C+= wcsnrtombs_test
+ATF_TESTS_C+= wcsrtombs_test
+ATF_TESTS_C+= wcstombs_test
+ATF_TESTS_C+= wctomb_2_test
+
NETBSD_ATF_TESTS_C= io_test
NETBSD_ATF_TESTS_C+= mbrtowc_test
NETBSD_ATF_TESTS_C+= mbstowcs_test
@@ -13,7 +31,13 @@ NETBSD_ATF_TESTS_C+= wcsspn_test
NETBSD_ATF_TESTS_C+= wcstod_test
NETBSD_ATF_TESTS_C+= wctomb_test
-CFLAGS.t_wctomb.c+= -Wno-stack-protector
+SRCS.mbrtowc_2_test= mbrtowc_test.c
+SRCS.mbsnrtowcs_2_test= mbsnrtowcs_test.c
+SRCS.mbstowcs_2_test= mbstowcs_test.c
+SRCS.mbtowc_2_test= mbtowc_test.c
+SRCS.wctomb_2_test= wctomb_test.c
+
+CFLAGS.t_wctomb.c+= -Wno-stack-protector
.include "../Makefile.netbsd-tests"
Copied and modified: head/lib/libc/tests/locale/btowc_test.c (from r290531, head/tools/regression/lib/libc/locale/test-btowc.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-btowc.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/btowc_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -34,7 +34,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <limits.h>
#include <locale.h>
#include <stdio.h>
@@ -42,32 +41,31 @@ __FBSDID("$FreeBSD$");
#include <string.h>
#include <wchar.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(btowc_test);
+ATF_TC_BODY(btowc_test, tc)
{
int i;
- printf("1..2\n");
-
- /*
- * C/POSIX locale.
- */
- assert(btowc(EOF) == WEOF);
- assert(wctob(WEOF) == EOF);
+ /* C/POSIX locale. */
+ ATF_REQUIRE(btowc(EOF) == WEOF);
+ ATF_REQUIRE(wctob(WEOF) == EOF);
for (i = 0; i < UCHAR_MAX; i++)
- assert(btowc(i) == (wchar_t)i && i == (int)wctob(i));
+ ATF_REQUIRE(btowc(i) == (wchar_t)i && i == (int)wctob(i));
- /*
- * Japanese (EUC) locale.
- */
+ /* Japanese (EUC) locale. */
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
+ ATF_REQUIRE(MB_CUR_MAX > 1);
+ ATF_REQUIRE(btowc('A') == L'A' && wctob(L'A') == 'A');
+ ATF_REQUIRE(btowc(0xa3) == WEOF && wctob(0xa3c1) == EOF);
- assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
- assert(MB_CUR_MAX > 1);
- assert(btowc('A') == L'A' && wctob(L'A') == 'A');
- assert(btowc(0xa3) == WEOF && wctob(0xa3c1) == EOF);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
- printf("ok 1 - btowc()\n");
- printf("ok 2 - wctob()\n");
+ ATF_TP_ADD_TC(tp, btowc_test);
- return (0);
+ return (atf_no_error());
}
Copied and modified: head/lib/libc/tests/locale/c16rtomb_test.c (from r290531, head/tools/regression/lib/libc/locale/test-c16rtomb.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-c16rtomb.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/c16rtomb_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -33,7 +33,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <errno.h>
#include <limits.h>
#include <locale.h>
@@ -41,105 +40,103 @@ __FBSDID("$FreeBSD$");
#include <string.h>
#include <uchar.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(c16rtomb_test);
+ATF_TC_BODY(c16rtomb_test, tc)
{
mbstate_t s;
char buf[MB_LEN_MAX + 1];
- /*
- * C/POSIX locale.
- */
-
- printf("1..1\n");
+ /* C/POSIX locale. */
/*
* If the buffer argument is NULL, c16 is implicitly 0,
* c16rtomb() resets its internal state.
*/
- assert(c16rtomb(NULL, L'\0', NULL) == 1);
- assert(c16rtomb(NULL, 0xdc00, NULL) == 1);
+ ATF_REQUIRE(c16rtomb(NULL, L'\0', NULL) == 1);
+ ATF_REQUIRE(c16rtomb(NULL, 0xdc00, NULL) == 1);
/* Null wide character. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, 0, &s) == 1);
- assert((unsigned char)buf[0] == 0 && (unsigned char)buf[1] == 0xcc);
+ ATF_REQUIRE(c16rtomb(buf, 0, &s) == 1);
+ ATF_REQUIRE((unsigned char)buf[0] == 0 && (unsigned char)buf[1] == 0xcc);
/* Latin letter A, internal state. */
- assert(c16rtomb(NULL, L'\0', NULL) == 1);
- assert(c16rtomb(NULL, L'A', NULL) == 1);
+ ATF_REQUIRE(c16rtomb(NULL, L'\0', NULL) == 1);
+ ATF_REQUIRE(c16rtomb(NULL, L'A', NULL) == 1);
/* Latin letter A. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, L'A', &s) == 1);
- assert((unsigned char)buf[0] == 'A' && (unsigned char)buf[1] == 0xcc);
+ ATF_REQUIRE(c16rtomb(buf, L'A', &s) == 1);
+ ATF_REQUIRE((unsigned char)buf[0] == 'A' && (unsigned char)buf[1] == 0xcc);
/* Unicode character 'Pile of poo'. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, 0xd83d, &s) == 0);
- assert(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
- assert(errno == EILSEQ);
- assert((unsigned char)buf[0] == 0xcc);
+ ATF_REQUIRE(c16rtomb(buf, 0xd83d, &s) == 0);
+ ATF_REQUIRE(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
+ ATF_REQUIRE(errno == EILSEQ);
+ ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
- /*
- * ISO8859-1.
- */
+ /* ISO8859-1. */
- assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
"en_US.ISO8859-1") == 0);
/* Unicode character 'Euro sign'. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, 0x20ac, &s) == (size_t)-1);
- assert(errno == EILSEQ);
- assert((unsigned char)buf[0] == 0xcc);
+ ATF_REQUIRE(c16rtomb(buf, 0x20ac, &s) == (size_t)-1);
+ ATF_REQUIRE(errno == EILSEQ);
+ ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
- /*
- * ISO8859-15.
- */
+ /* ISO8859-15. */
- assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
"en_US.ISO8859-15") == 0);
/* Unicode character 'Euro sign'. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, 0x20ac, &s) == 1);
- assert((unsigned char)buf[0] == 0xa4 && (unsigned char)buf[1] == 0xcc);
+ ATF_REQUIRE(c16rtomb(buf, 0x20ac, &s) == 1);
+ ATF_REQUIRE((unsigned char)buf[0] == 0xa4 && (unsigned char)buf[1] == 0xcc);
- /*
- * UTF-8.
- */
+ /* UTF-8. */
- assert(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") == 0);
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") == 0);
/* Unicode character 'Pile of poo'. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, 0xd83d, &s) == 0);
- assert(c16rtomb(buf, 0xdca9, &s) == 4);
- assert((unsigned char)buf[0] == 0xf0 && (unsigned char)buf[1] == 0x9f &&
+ ATF_REQUIRE(c16rtomb(buf, 0xd83d, &s) == 0);
+ ATF_REQUIRE(c16rtomb(buf, 0xdca9, &s) == 4);
+ ATF_REQUIRE((unsigned char)buf[0] == 0xf0 && (unsigned char)buf[1] == 0x9f &&
(unsigned char)buf[2] == 0x92 && (unsigned char)buf[3] == 0xa9 &&
(unsigned char)buf[4] == 0xcc);
/* Invalid code; 'Pile of poo' without the trail surrogate. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, 0xd83d, &s) == 0);
- assert(c16rtomb(buf, L'A', &s) == (size_t)-1);
- assert(errno == EILSEQ);
- assert((unsigned char)buf[0] == 0xcc);
+ ATF_REQUIRE(c16rtomb(buf, 0xd83d, &s) == 0);
+ ATF_REQUIRE(c16rtomb(buf, L'A', &s) == (size_t)-1);
+ ATF_REQUIRE(errno == EILSEQ);
+ ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
/* Invalid code; 'Pile of poo' without the lead surrogate. */
memset(&s, 0, sizeof(s));
memset(buf, 0xcc, sizeof(buf));
- assert(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
- assert(errno == EILSEQ);
- assert((unsigned char)buf[0] == 0xcc);
+ ATF_REQUIRE(c16rtomb(buf, 0xdca9, &s) == (size_t)-1);
+ ATF_REQUIRE(errno == EILSEQ);
+ ATF_REQUIRE((unsigned char)buf[0] == 0xcc);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
+
+ ATF_TP_ADD_TC(tp, c16rtomb_test);
- printf("ok 1 - c16rtomb()\n");
+ return (atf_no_error());
}
Copied and modified: head/lib/libc/tests/locale/iswctype_test.c (from r290531, head/tools/regression/lib/libc/locale/test-iswctype.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-iswctype.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/iswctype_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -34,15 +34,16 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <locale.h>
#include <stdio.h>
#include <string.h>
#include <wchar.h>
#include <wctype.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(iswctype_test);
+ATF_TC_BODY(iswctype_test, tc)
{
wctype_t t;
int i, j;
@@ -64,39 +65,36 @@ main(int argc, char *argv[])
{ "xdigit", iswxdigit }
};
- printf("1..2\n");
-
- /*
- * C/POSIX locale.
- */
+ /* C/POSIX locale. */
for (i = 0; i < sizeof(cls) / sizeof(*cls); i++) {
t = wctype(cls[i].name);
- assert(t != 0);
+ ATF_REQUIRE(t != 0);
for (j = 0; j < 256; j++)
- assert(cls[i].func(j) == iswctype(j, t));
+ ATF_REQUIRE(cls[i].func(j) == iswctype(j, t));
}
t = wctype("elephant");
- assert(t == 0);
+ ATF_REQUIRE(t == 0);
for (i = 0; i < 256; i++)
- assert(iswctype(i, t) == 0);
+ ATF_REQUIRE(iswctype(i, t) == 0);
- /*
- * Japanese (EUC) locale.
- */
- assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
+ /* Japanese (EUC) locale. */
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
for (i = 0; i < sizeof(cls) / sizeof(*cls); i++) {
t = wctype(cls[i].name);
- assert(t != 0);
+ ATF_REQUIRE(t != 0);
for (j = 0; j < 65536; j++)
- assert(cls[i].func(j) == iswctype(j, t));
+ ATF_REQUIRE(cls[i].func(j) == iswctype(j, t));
}
t = wctype("elephant");
- assert(t == 0);
+ ATF_REQUIRE(t == 0);
for (i = 0; i < 65536; i++)
- assert(iswctype(i, t) == 0);
+ ATF_REQUIRE(iswctype(i, t) == 0);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
- printf("ok 1 - iswctype()\n");
- printf("ok 2 - wctype()\n");
+ ATF_TP_ADD_TC(tp, iswctype_test);
- return (0);
+ return (atf_no_error());
}
Copied and modified: head/lib/libc/tests/locale/mblen_test.c (from r290531, head/tools/regression/lib/libc/locale/test-mblen.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mblen.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/mblen_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -35,15 +35,16 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <limits.h>
#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mblen_test);
+ATF_TC_BODY(mblen_test, tc)
{
size_t len;
char buf[MB_LEN_MAX + 1];
@@ -54,61 +55,65 @@ main(int argc, char *argv[])
printf("1..1\n");
- assert(MB_CUR_MAX == 1);
+ ATF_REQUIRE(MB_CUR_MAX == 1);
/* No shift states in C locale. */
- assert(mblen(NULL, 0) == 0);
+ ATF_REQUIRE(mblen(NULL, 0) == 0);
/* Null wide character. */
memset(buf, 0xcc, sizeof(buf));
buf[0] = '\0';
- assert(mblen(buf, 1) == 0);
+ ATF_REQUIRE(mblen(buf, 1) == 0);
/* Latin letter A. */
buf[0] = 'A';
- assert(mblen(buf, 1) == 1);
+ ATF_REQUIRE(mblen(buf, 1) == 1);
/* Incomplete character sequence. */
buf[0] = '\0';
- assert(mblen(buf, 0) == -1);
- assert(mblen(NULL, 0) == 0);
+ ATF_REQUIRE(mblen(buf, 0) == -1);
+ ATF_REQUIRE(mblen(NULL, 0) == 0);
/*
* Japanese (EUC) locale.
*/
- assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
- assert(MB_CUR_MAX > 1);
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
+ ATF_REQUIRE(MB_CUR_MAX > 1);
/* No shift states in EUC. */
- assert(mblen(NULL, 0) == 0);
+ ATF_REQUIRE(mblen(NULL, 0) == 0);
/* Null wide character. */
memset(buf, 0xcc, sizeof(buf));
buf[0] = '\0';
- assert(mblen(buf, 1) == 0);
+ ATF_REQUIRE(mblen(buf, 1) == 0);
/* Latin letter A. */
buf[0] = 'A';
- assert(mblen(buf, 1) == 1);
+ ATF_REQUIRE(mblen(buf, 1) == 1);
/* Incomplete character sequence. */
buf[0] = '\0';
- assert(mblen(buf, 0) == -1);
- assert(mblen(NULL, 0) == 0);
+ ATF_REQUIRE(mblen(buf, 0) == -1);
+ ATF_REQUIRE(mblen(NULL, 0) == 0);
/* Incomplete character sequence (truncated double-byte). */
memset(buf, 0xcc, sizeof(buf));
buf[0] = 0xa3;
buf[1] = 0x00;
- assert(mblen(buf, 1) == -1);
- assert(mblen(NULL, 0) == 0);
+ ATF_REQUIRE(mblen(buf, 1) == -1);
+ ATF_REQUIRE(mblen(NULL, 0) == 0);
/* Same as above, but complete. */
buf[1] = 0xc1;
- assert(mblen(buf, 2) == 2);
+ ATF_REQUIRE(mblen(buf, 2) == 2);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
- printf("ok 1 - mblen()\n");
+ ATF_TP_ADD_TC(tp, mblen_test);
- return (0);
+ return (atf_no_error());
}
Copied and modified: head/lib/libc/tests/locale/mbrlen_test.c (from r290531, head/tools/regression/lib/libc/locale/test-mbrlen.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbrlen.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/mbrlen_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -35,7 +35,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <errno.h>
#include <limits.h>
#include <locale.h>
@@ -44,86 +43,85 @@ __FBSDID("$FreeBSD$");
#include <string.h>
#include <wchar.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbrlen_test);
+ATF_TC_BODY(mbrlen_test, tc)
{
mbstate_t s;
size_t len;
char buf[MB_LEN_MAX + 1];
- /*
- * C/POSIX locale.
- */
-
- printf("1..1\n");
-
- assert(MB_CUR_MAX == 1);
+ /* C/POSIX locale. */
+ ATF_REQUIRE(MB_CUR_MAX == 1);
/* Null wide character, internal state. */
memset(buf, 0xcc, sizeof(buf));
buf[0] = 0;
- assert(mbrlen(buf, 1, NULL) == 0);
+ ATF_REQUIRE(mbrlen(buf, 1, NULL) == 0);
/* Null wide character. */
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 1, &s) == 0);
+ ATF_REQUIRE(mbrlen(buf, 1, &s) == 0);
/* Latin letter A, internal state. */
- assert(mbrlen(NULL, 0, NULL) == 0);
+ ATF_REQUIRE(mbrlen(NULL, 0, NULL) == 0);
buf[0] = 'A';
- assert(mbrlen(buf, 1, NULL) == 1);
+ ATF_REQUIRE(mbrlen(buf, 1, NULL) == 1);
/* Latin letter A. */
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 1, &s) == 1);
+ ATF_REQUIRE(mbrlen(buf, 1, &s) == 1);
/* Incomplete character sequence. */
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 0, &s) == (size_t)-2);
+ ATF_REQUIRE(mbrlen(buf, 0, &s) == (size_t)-2);
- /*
- * Japanese (EUC) locale.
- */
+ /* Japanese (EUC) locale. */
- assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
- assert(MB_CUR_MAX > 1);
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
+ ATF_REQUIRE(MB_CUR_MAX > 1);
/* Null wide character, internal state. */
- assert(mbrlen(NULL, 0, NULL) == 0);
+ ATF_REQUIRE(mbrlen(NULL, 0, NULL) == 0);
memset(buf, 0xcc, sizeof(buf));
buf[0] = 0;
- assert(mbrlen(buf, 1, NULL) == 0);
+ ATF_REQUIRE(mbrlen(buf, 1, NULL) == 0);
/* Null wide character. */
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 1, &s) == 0);
+ ATF_REQUIRE(mbrlen(buf, 1, &s) == 0);
/* Latin letter A, internal state. */
- assert(mbrlen(NULL, 0, NULL) == 0);
+ ATF_REQUIRE(mbrlen(NULL, 0, NULL) == 0);
buf[0] = 'A';
- assert(mbrlen(buf, 1, NULL) == 1);
+ ATF_REQUIRE(mbrlen(buf, 1, NULL) == 1);
/* Latin letter A. */
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 1, &s) == 1);
+ ATF_REQUIRE(mbrlen(buf, 1, &s) == 1);
/* Incomplete character sequence (zero length). */
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 0, &s) == (size_t)-2);
+ ATF_REQUIRE(mbrlen(buf, 0, &s) == (size_t)-2);
/* Incomplete character sequence (truncated double-byte). */
memset(buf, 0xcc, sizeof(buf));
buf[0] = 0xa3;
buf[1] = 0x00;
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 1, &s) == (size_t)-2);
+ ATF_REQUIRE(mbrlen(buf, 1, &s) == (size_t)-2);
/* Same as above, but complete. */
buf[1] = 0xc1;
memset(&s, 0, sizeof(s));
- assert(mbrlen(buf, 2, &s) == 2);
+ ATF_REQUIRE(mbrlen(buf, 2, &s) == 2);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
- printf("ok 1 - mbrlen()\n");
+ ATF_TP_ADD_TC(tp, mbrlen_test);
- return (0);
+ return (atf_no_error());
}
Copied and modified: head/lib/libc/tests/locale/mbrtoc16_test.c (from r290531, head/tools/regression/lib/libc/locale/test-mbrtoc16.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbrtoc16.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/mbrtoc16_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -33,7 +33,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <errno.h>
#include <limits.h>
#include <locale.h>
@@ -41,8 +40,10 @@ __FBSDID("$FreeBSD$");
#include <string.h>
#include <uchar.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbrtoc16_test);
+ATF_TC_BODY(mbrtoc16_test, tc)
{
mbstate_t s;
size_t len;
@@ -55,141 +56,145 @@ main(int argc, char *argv[])
printf("1..1\n");
/* Null wide character, internal state. */
- assert(mbrtoc16(&c16, "", 1, NULL) == 0);
- assert(c16 == 0);
+ ATF_REQUIRE(mbrtoc16(&c16, "", 1, NULL) == 0);
+ ATF_REQUIRE(c16 == 0);
/* Null wide character. */
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "", 1, &s) == 0);
- assert(c16 == 0);
+ ATF_REQUIRE(mbrtoc16(&c16, "", 1, &s) == 0);
+ ATF_REQUIRE(c16 == 0);
/* Latin letter A, internal state. */
- assert(mbrtoc16(NULL, 0, 0, NULL) == 0);
- assert(mbrtoc16(&c16, "A", 1, NULL) == 1);
- assert(c16 == L'A');
+ ATF_REQUIRE(mbrtoc16(NULL, 0, 0, NULL) == 0);
+ ATF_REQUIRE(mbrtoc16(&c16, "A", 1, NULL) == 1);
+ ATF_REQUIRE(c16 == L'A');
/* Latin letter A. */
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "A", 1, &s) == 1);
- assert(c16 == L'A');
+ ATF_REQUIRE(mbrtoc16(&c16, "A", 1, &s) == 1);
+ ATF_REQUIRE(c16 == L'A');
/* Incomplete character sequence. */
c16 = L'z';
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
- assert(c16 == L'z');
+ ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
+ ATF_REQUIRE(c16 == L'z');
/* Check that mbrtoc16() doesn't access the buffer when n == 0. */
c16 = L'z';
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
- assert(c16 == L'z');
+ ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
+ ATF_REQUIRE(c16 == L'z');
/* Check that mbrtoc16() doesn't read ahead too aggressively. */
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "AB", 2, &s) == 1);
- assert(c16 == L'A');
- assert(mbrtoc16(&c16, "C", 1, &s) == 1);
- assert(c16 == L'C');
+ ATF_REQUIRE(mbrtoc16(&c16, "AB", 2, &s) == 1);
+ ATF_REQUIRE(c16 == L'A');
+ ATF_REQUIRE(mbrtoc16(&c16, "C", 1, &s) == 1);
+ ATF_REQUIRE(c16 == L'C');
/*
* ISO-8859-1.
*/
- assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-1"),
"en_US.ISO8859-1") == 0);
/* Currency sign. */
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
- assert(c16 == 0xa4);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
+ ATF_REQUIRE(c16 == 0xa4);
/*
* ISO-8859-15.
*/
- assert(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.ISO8859-15"),
"en_US.ISO8859-15") == 0);
/* Euro sign. */
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
- assert(c16 == 0x20ac);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xa4", 1, &s) == 1);
+ ATF_REQUIRE(c16 == 0x20ac);
/*
* UTF-8.
*/
- assert(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") == 0);
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "en_US.UTF-8"), "en_US.UTF-8") == 0);
/* Null wide character, internal state. */
- assert(mbrtoc16(NULL, 0, 0, NULL) == 0);
- assert(mbrtoc16(&c16, "", 1, NULL) == 0);
- assert(c16 == 0);
+ ATF_REQUIRE(mbrtoc16(NULL, 0, 0, NULL) == 0);
+ ATF_REQUIRE(mbrtoc16(&c16, "", 1, NULL) == 0);
+ ATF_REQUIRE(c16 == 0);
/* Null wide character. */
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "", 1, &s) == 0);
- assert(c16 == 0);
+ ATF_REQUIRE(mbrtoc16(&c16, "", 1, &s) == 0);
+ ATF_REQUIRE(c16 == 0);
/* Latin letter A, internal state. */
- assert(mbrtoc16(NULL, 0, 0, NULL) == 0);
- assert(mbrtoc16(&c16, "A", 1, NULL) == 1);
- assert(c16 == L'A');
+ ATF_REQUIRE(mbrtoc16(NULL, 0, 0, NULL) == 0);
+ ATF_REQUIRE(mbrtoc16(&c16, "A", 1, NULL) == 1);
+ ATF_REQUIRE(c16 == L'A');
/* Latin letter A. */
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "A", 1, &s) == 1);
- assert(c16 == L'A');
+ ATF_REQUIRE(mbrtoc16(&c16, "A", 1, &s) == 1);
+ ATF_REQUIRE(c16 == L'A');
/* Incomplete character sequence (zero length). */
c16 = L'z';
memset(&s, 0, sizeof(s));
- assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
- assert(c16 == L'z');
+ ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-2);
+ ATF_REQUIRE(c16 == L'z');
/* Incomplete character sequence (truncated double-byte). */
memset(&s, 0, sizeof(s));
c16 = 0;
- assert(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
/* Same as above, but complete. */
memset(&s, 0, sizeof(s));
c16 = 0;
- assert(mbrtoc16(&c16, "\xc3\x84", 2, &s) == 2);
- assert(c16 == 0xc4);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xc3\x84", 2, &s) == 2);
+ ATF_REQUIRE(c16 == 0xc4);
/* Test restarting behaviour. */
memset(&s, 0, sizeof(s));
c16 = 0;
- assert(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
- assert(c16 == 0);
- assert(mbrtoc16(&c16, "\xb7", 1, &s) == 1);
- assert(c16 == 0xf7);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xc3", 1, &s) == (size_t)-2);
+ ATF_REQUIRE(c16 == 0);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xb7", 1, &s) == 1);
+ ATF_REQUIRE(c16 == 0xf7);
/* Surrogate pair. */
memset(&s, 0, sizeof(s));
c16 = 0;
- assert(mbrtoc16(&c16, "\xf0\x9f\x92\xa9", 4, &s) == 4);
- assert(c16 == 0xd83d);
- assert(mbrtoc16(&c16, "", 0, &s) == (size_t)-3);
- assert(c16 == 0xdca9);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xf0\x9f\x92\xa9", 4, &s) == 4);
+ ATF_REQUIRE(c16 == 0xd83d);
+ ATF_REQUIRE(mbrtoc16(&c16, "", 0, &s) == (size_t)-3);
+ ATF_REQUIRE(c16 == 0xdca9);
/* Letter e with acute, precomposed. */
memset(&s, 0, sizeof(s));
c16 = 0;
- assert(mbrtoc16(&c16, "\xc3\xa9", 2, &s) == 2);
- assert(c16 == 0xe9);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xc3\xa9", 2, &s) == 2);
+ ATF_REQUIRE(c16 == 0xe9);
/* Letter e with acute, combined. */
memset(&s, 0, sizeof(s));
c16 = 0;
- assert(mbrtoc16(&c16, "\x65\xcc\x81", 3, &s) == 1);
- assert(c16 == 0x65);
- assert(mbrtoc16(&c16, "\xcc\x81", 2, &s) == 2);
- assert(c16 == 0x301);
+ ATF_REQUIRE(mbrtoc16(&c16, "\x65\xcc\x81", 3, &s) == 1);
+ ATF_REQUIRE(c16 == 0x65);
+ ATF_REQUIRE(mbrtoc16(&c16, "\xcc\x81", 2, &s) == 2);
+ ATF_REQUIRE(c16 == 0x301);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
- printf("ok 1 - mbrtoc16()\n");
+ ATF_TP_ADD_TC(tp, mbrtoc16_test);
- return (0);
+ return (atf_no_error());
}
Copied and modified: head/lib/libc/tests/locale/mbrtowc_test.c (from r290531, head/tools/regression/lib/libc/locale/test-mbrtowc.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbrtowc.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/mbrtowc_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -35,7 +35,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <errno.h>
#include <limits.h>
#include <locale.h>
@@ -44,8 +43,10 @@ __FBSDID("$FreeBSD$");
#include <string.h>
#include <wchar.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbrtowc_test);
+ATF_TC_BODY(mbrtowc_test, tc)
{
mbstate_t s;
size_t len;
@@ -58,78 +59,78 @@ main(int argc, char *argv[])
printf("1..1\n");
- assert(MB_CUR_MAX == 1);
+ ATF_REQUIRE(MB_CUR_MAX == 1);
/* Null wide character, internal state. */
memset(buf, 0xcc, sizeof(buf));
buf[0] = 0;
- assert(mbrtowc(&wc, buf, 1, NULL) == 0);
- assert(wc == 0);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 0);
+ ATF_REQUIRE(wc == 0);
/* Null wide character. */
memset(&s, 0, sizeof(s));
- assert(mbrtowc(&wc, buf, 1, &s) == 0);
- assert(wc == 0);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 0);
+ ATF_REQUIRE(wc == 0);
/* Latin letter A, internal state. */
- assert(mbrtowc(NULL, 0, 0, NULL) == 0);
+ ATF_REQUIRE(mbrtowc(NULL, 0, 0, NULL) == 0);
buf[0] = 'A';
- assert(mbrtowc(&wc, buf, 1, NULL) == 1);
- assert(wc == L'A');
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 1);
+ ATF_REQUIRE(wc == L'A');
/* Latin letter A. */
memset(&s, 0, sizeof(s));
- assert(mbrtowc(&wc, buf, 1, &s) == 1);
- assert(wc == L'A');
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 1);
+ ATF_REQUIRE(wc == L'A');
/* Incomplete character sequence. */
wc = L'z';
memset(&s, 0, sizeof(s));
- assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
- assert(wc == L'z');
+ ATF_REQUIRE(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
+ ATF_REQUIRE(wc == L'z');
/* Check that mbrtowc() doesn't access the buffer when n == 0. */
wc = L'z';
memset(&s, 0, sizeof(s));
buf[0] = '\0';
- assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
- assert(wc == L'z');
+ ATF_REQUIRE(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
+ ATF_REQUIRE(wc == L'z');
/*
* Japanese (EUC) locale.
*/
- assert(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
- assert(MB_CUR_MAX > 1);
+ ATF_REQUIRE(strcmp(setlocale(LC_CTYPE, "ja_JP.eucJP"), "ja_JP.eucJP") == 0);
+ ATF_REQUIRE(MB_CUR_MAX > 1);
/* Null wide character, internal state. */
- assert(mbrtowc(NULL, 0, 0, NULL) == 0);
+ ATF_REQUIRE(mbrtowc(NULL, 0, 0, NULL) == 0);
memset(buf, 0xcc, sizeof(buf));
buf[0] = 0;
- assert(mbrtowc(&wc, buf, 1, NULL) == 0);
- assert(wc == 0);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 0);
+ ATF_REQUIRE(wc == 0);
/* Null wide character. */
memset(&s, 0, sizeof(s));
- assert(mbrtowc(&wc, buf, 1, &s) == 0);
- assert(wc == 0);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 0);
+ ATF_REQUIRE(wc == 0);
/* Latin letter A, internal state. */
- assert(mbrtowc(NULL, 0, 0, NULL) == 0);
+ ATF_REQUIRE(mbrtowc(NULL, 0, 0, NULL) == 0);
buf[0] = 'A';
- assert(mbrtowc(&wc, buf, 1, NULL) == 1);
- assert(wc == L'A');
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, NULL) == 1);
+ ATF_REQUIRE(wc == L'A');
/* Latin letter A. */
memset(&s, 0, sizeof(s));
- assert(mbrtowc(&wc, buf, 1, &s) == 1);
- assert(wc == L'A');
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 1);
+ ATF_REQUIRE(wc == L'A');
/* Incomplete character sequence (zero length). */
wc = L'z';
memset(&s, 0, sizeof(s));
- assert(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
- assert(wc == L'z');
+ ATF_REQUIRE(mbrtowc(&wc, buf, 0, &s) == (size_t)-2);
+ ATF_REQUIRE(wc == L'z');
/* Incomplete character sequence (truncated double-byte). */
memset(buf, 0xcc, sizeof(buf));
@@ -137,27 +138,31 @@ main(int argc, char *argv[])
buf[1] = 0x00;
memset(&s, 0, sizeof(s));
wc = 0;
- assert(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
/* Same as above, but complete. */
buf[1] = 0xc1;
memset(&s, 0, sizeof(s));
wc = 0;
- assert(mbrtowc(&wc, buf, 2, &s) == 2);
- assert(wc == 0xa3c1);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 2, &s) == 2);
+ ATF_REQUIRE(wc == 0xa3c1);
/* Test restarting behaviour. */
memset(buf, 0xcc, sizeof(buf));
buf[0] = 0xa3;
memset(&s, 0, sizeof(s));
wc = 0;
- assert(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
- assert(wc == 0);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == (size_t)-2);
+ ATF_REQUIRE(wc == 0);
buf[0] = 0xc1;
- assert(mbrtowc(&wc, buf, 1, &s) == 1);
- assert(wc == 0xa3c1);
+ ATF_REQUIRE(mbrtowc(&wc, buf, 1, &s) == 1);
+ ATF_REQUIRE(wc == 0xa3c1);
+}
+
+ATF_TP_ADD_TCS(tp)
+{
- printf("ok 1 - mbrtowc()\n");
+ ATF_TP_ADD_TC(tp, mbrtowc_test);
- return (0);
+ return (atf_no_error());
}
Copied and modified: head/lib/libc/tests/locale/mbsnrtowcs_test.c (from r290531, head/tools/regression/lib/libc/locale/test-mbsnrtowcs.c)
==============================================================================
--- head/tools/regression/lib/libc/locale/test-mbsnrtowcs.c Sun Nov 8 01:41:44 2015 (r290531, copy source)
+++ head/lib/libc/tests/locale/mbsnrtowcs_test.c Sun Nov 8 02:06:17 2015 (r290532)
@@ -34,7 +34,6 @@
#include <sys/cdefs.h>
__FBSDID("$FreeBSD$");
-#include <assert.h>
#include <errno.h>
#include <limits.h>
#include <locale.h>
@@ -43,19 +42,17 @@ __FBSDID("$FreeBSD$");
#include <string.h>
#include <wchar.h>
-int
-main(int argc, char *argv[])
+#include <atf-c.h>
+
+ATF_TC_WITHOUT_HEAD(mbsnrtowcs_test);
+ATF_TC_BODY(mbsnrtowcs_test, tc)
{
char srcbuf[128];
wchar_t dstbuf[128];
char *src;
mbstate_t s;
- /*
- * C/POSIX locale.
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-head
mailing list