mirror of
https://github.com/opnsense/src.git
synced 2026-06-09 00:32:25 -04:00
Convert print_positional_test over to ATF
Somehow missed in r290537 X-MFC with: r290537 MFC after: 1 week Sponsored by: EMC / Isilon Storage Division
This commit is contained in:
parent
55b270e68c
commit
4c05e4ea85
1 changed files with 41 additions and 17 deletions
|
|
@ -37,6 +37,8 @@ __FBSDID("$FreeBSD$");
|
|||
#include <string.h>
|
||||
#include <wchar.h>
|
||||
|
||||
#include <atf-c.h>
|
||||
|
||||
const char correct[] =
|
||||
"|xx 01 02 03 04\n"
|
||||
"|xx 05 06 07 08\n"
|
||||
|
|
@ -53,15 +55,13 @@ const char correct[] =
|
|||
|
||||
const char correct2[] =
|
||||
"b bs BSD";
|
||||
static char buf[1024];
|
||||
static wchar_t wbuf1[1024], wbuf2[1024];
|
||||
static const char *temp;
|
||||
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
ATF_TC_WITHOUT_HEAD(positional_normal);
|
||||
ATF_TC_BODY(positional_normal, tc)
|
||||
{
|
||||
char buf[1024];
|
||||
wchar_t wbuf1[1024], wbuf2[1024];
|
||||
const char *temp;
|
||||
|
||||
printf("1..4\n");
|
||||
|
||||
/* Test positional arguments */
|
||||
snprintf(buf, sizeof buf,
|
||||
|
|
@ -86,8 +86,13 @@ main(int argc, char *argv[])
|
|||
"37", "38", "39", "40", "41", "42",
|
||||
"43", "44", 45, -1L, 1LL, -1, 1LL
|
||||
);
|
||||
printf("%sok 1 - print-positional normal\n",
|
||||
strcmp(buf, correct) == 0 ? "" : "not ");
|
||||
ATF_REQUIRE_MSG(wcscmp(wbuf1, wbuf2) == 0,
|
||||
"buffers didn't match");
|
||||
}
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(positional_wide);
|
||||
ATF_TC_BODY(positional_wide, tc)
|
||||
{
|
||||
|
||||
swprintf(wbuf1, sizeof wbuf1,
|
||||
L"|xx %1$s %2$s %3$s %4$s\n"
|
||||
|
|
@ -113,20 +118,39 @@ main(int argc, char *argv[])
|
|||
);
|
||||
temp = correct;
|
||||
mbsrtowcs(wbuf2, &temp, sizeof wbuf2, NULL);
|
||||
printf("%sok 2 - print-positional wide\n",
|
||||
wcscmp(wbuf1, wbuf2) == 0 ? "" : "not ");
|
||||
ATF_REQUIRE_MSG(wcscmp(wbuf1, wbuf2) == 0,
|
||||
"buffers didn't match");
|
||||
}
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(positional_precision);
|
||||
ATF_TC_BODY(positional_precision, tc)
|
||||
{
|
||||
|
||||
snprintf(buf, sizeof buf, "%2$.*4$s %2$.*3$s %1$s",
|
||||
"BSD", "bsd", 2, 1);
|
||||
printf("%sok 3 - print-positional precision\n",
|
||||
strcmp(buf, correct2) == 0 ? "" : "not ");
|
||||
ATF_REQUIRE_MSG(strcmp(buf, correct2) == 0,
|
||||
"buffers didn't match");
|
||||
}
|
||||
|
||||
ATF_TC_WITHOUT_HEAD(positional_precision_wide);
|
||||
ATF_TC_BODY(positional_precision_wide, tc)
|
||||
{
|
||||
|
||||
swprintf(wbuf1, sizeof buf, L"%2$.*4$s %2$.*3$s %1$s",
|
||||
"BSD", "bsd", 2, 1);
|
||||
temp = correct2;
|
||||
mbsrtowcs(wbuf2, &temp, sizeof wbuf2, NULL);
|
||||
printf("%sok 4 - print-positional precision wide\n",
|
||||
wcscmp(wbuf1, wbuf2) == 0 ? "" : "not ");
|
||||
|
||||
exit(0);
|
||||
ATF_REQUIRE_MSG(wcscmp(wbuf1, wbuf2) == 0,
|
||||
"buffers didn't match");
|
||||
}
|
||||
|
||||
ATF_TP_ADD_TCS(tp)
|
||||
{
|
||||
|
||||
ATF_TP_ADD_TC(tp, positional_normal);
|
||||
ATF_TP_ADD_TC(tp, positional_wide);
|
||||
ATF_TP_ADD_TC(tp, positional_precision);
|
||||
ATF_TP_ADD_TC(tp, positional_precision_wide);
|
||||
|
||||
return (atf_no_error());
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue