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

[PATCH v2 3/3] test-ctype: test iscntrl, ispunct, isxdigit and isprint

From
René Scharfe <l.s.r@web.de>
Date
Feb 13, 2023, 21:12 UTC
Message-ID
<cae75cb9-305b-5ffd-dbb2-8cb83f102541@web.de>
In-Reply-To
<81eee04b-598e-dfe1-f954-3105bcbcb2f2@web.de>

Test the character classifiers added by 1c149ab2dd (ctype: support iscntrl, ispunct, isxdigit and isprint, 2012-10-15) and 0fcec2ce54 (format-patch: make rfc2047 encoding more strict, 2012-10-18).

Signed-off-by: René Scharfe <l.s.r@web.de>
---
 t/helper/test-ctype.c | 9 +++++++++
 1 file changed, 9 insertions(+)
diff --git a/t/helper/test-ctype.c b/t/helper/test-ctype.c
index 8ac76e93e4..b21bd672d9 100644
--- a/t/helper/test-ctype.c
+++ b/t/helper/test-ctype.c
@@ -33,6 +33,7 @@ static int is_in(const char *s, int ch)
 #define DIGIT "0123456789"
 #define LOWER "abcdefghijklmnopqrstuvwxyz"
 #define UPPER "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
+#define PUNCT "!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~"
 #define ASCII \
 	"\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" \
 	"\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" \
@@ -42,6 +43,10 @@ static int is_in(const char *s, int ch)
 	"\x50\x51\x52\x53\x54\x55\x56\x57\x58\x59\x5a\x5b\x5c\x5d\x5e\x5f" \
 	"\x60\x61\x62\x63\x64\x65\x66\x67\x68\x69\x6a\x6b\x6c\x6d\x6e\x6f" \
 	"\x70\x71\x72\x73\x74\x75\x76\x77\x78\x79\x7a\x7b\x7c\x7d\x7e\x7f"
+#define CNTRL \
+	"\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f" \
+	"\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f" \
+	"\x7f"

 int cmd__ctype(int argc, const char **argv)
 {
@@ -55,6 +60,10 @@ int cmd__ctype(int argc, const char **argv)
 	TEST_CLASS(isascii, ASCII);
 	TEST_CLASS(islower, LOWER);
 	TEST_CLASS(isupper, UPPER);
+	TEST_CLASS(iscntrl, CNTRL);
+	TEST_CLASS(ispunct, PUNCT);
+	TEST_CLASS(isxdigit, DIGIT "abcdefABCDEF");
+	TEST_CLASS(isprint, LOWER UPPER DIGIT PUNCT " ");

 	return rc;
 }
--
2.39.1
Previous: René ScharfeNext: Junio C Hamano
Message 13 of 14 in “test-ctype: test all classifiers”
  1. 0/3 test-ctype: test all classifiersRené Scharfe, Feb 11, 2023
  2. 1/3 test-ctype: test isasciiRené Scharfe, Feb 11, 2023
  3. Junio C HamanoFeb 11, 2023
  4. René ScharfeFeb 12, 2023
  5. Junio C HamanoFeb 13, 2023
  6. René ScharfeFeb 13, 2023
  7. Junio C HamanoFeb 13, 2023
  8. 2/3 test-ctype: test islower and isupperRené Scharfe, Feb 11, 2023
  9. 3/3 test-ctype: test iscntrl, ispunct, isxdigit and isprintRené Scharfe, Feb 11, 2023
  10. 0/3 test-ctype: test all classifiersRené Scharfe, Feb 13, 2023
  11. 1/3 test-ctype: test isasciiRené Scharfe, Feb 13, 2023
  12. 2/3 test-ctype: test islower and isupperRené Scharfe, Feb 13, 2023
  13. 3/3 test-ctype: test iscntrl, ispunct, isxdigit and isprintRené Scharfe, Feb 13, 2023
  14. Junio C HamanoFeb 13, 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.