git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] test-ctype: check EOF

From
René Scharfe <l.s.r@web.de>
Date
Apr 30, 2023, 10:00 UTC
Message-ID
<cbc7feb9-7e15-77e2-b3e9-1fa194b4d4fb@web.de>

The character classifiers are supposed to handle EOF, a negative integer value. It isn't part of any character class. Extend the ctype tests to cover it.

Signed-off-by: René Scharfe <l.s.r@web.de>
---
 t/helper/test-ctype.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/t/helper/test-ctype.c b/t/helper/test-ctype.c
index 71a1a5c9b0..039703ee72 100644
--- a/t/helper/test-ctype.c
+++ b/t/helper/test-ctype.c
@@ -2,8 +2,10 @@

 static int rc;

-static void report_error(const char *class, int ch)
+static void test(int ch, const char *class, int expect, int actual)
 {
+	if (actual == expect)
+		return;
 	printf("%s classifies char %d (0x%02x) wrongly\n", class, ch, ch);
 	rc = 1;
 }
@@ -24,9 +26,9 @@ static int is_in(const char *s, int ch)
 #define TEST_CLASS(t,s) {			\
 	int i;					\
 	for (i = 0; i < 256; i++) {		\
-		if (is_in(s, i) != t(i))	\
-			report_error(#t, i);	\
+		test(i, #t, is_in(s, i), t(i));	\
 	}					\
+	test(EOF, #t, 0, t(EOF));		\
 }

 #define DIGIT "0123456789"
--
2.40.1
Next: Junio C Hamano
Message 1 of 3 in “test-ctype: check EOF”
  1. test-ctype: check EOFRené Scharfe, Apr 30, 2023
  2. Junio C HamanoMay 1, 2023
  3. René ScharfeMay 1, 2023

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.