Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Nov 2015 21:38:46 +0000 (UTC)
From:      Garrett Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r290560 - head/lib/libc/tests/stdio
Message-ID:  <201511082138.tA8Lck5m011015@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Sun Nov  8 21:38:46 2015
New Revision: 290560
URL: https://svnweb.freebsd.org/changeset/base/290560

Log:
  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

Modified:
  head/lib/libc/tests/stdio/print_positional_test.c

Modified: head/lib/libc/tests/stdio/print_positional_test.c
==============================================================================
--- head/lib/libc/tests/stdio/print_positional_test.c	Sun Nov  8 21:22:24 2015	(r290559)
+++ head/lib/libc/tests/stdio/print_positional_test.c	Sun Nov  8 21:38:46 2015	(r290560)
@@ -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 ");
+	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);
 
-	exit(0);
+	return (atf_no_error());
 }



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201511082138.tA8Lck5m011015>